Brevet FR3061575A1 — publié le 20180706

INDICE D'INTERRUPTION POUR SUIVRE LES ENREGISTREMENTS DE BASE DE DONNÉES CONTEXTE [0001] L'invention concerne de façon générale les ordinateurs et les logiciels, et en particulier Ies systèmes, procédés et produits de programme informatique pour gérer les enregistrements de base de données dans un système de gestion de voyage. [0002] Les systèmes de gestion de voyage incluent de façon générale une ou plusieurs bases de données, chaque base de données stockant et organisant une pluralité de structures d'enregistrements de données, ou « enregistrements ». Les enregistrements de base de données entretenus par un système de gestion de voyage pour gérer un voyage incluent de façon générale un dossier de nom de passager (FNP) qui stocke des données définissant un itinéraire de voyage, et un ou plusieurs billets qui peuvent être échangés contre les cartes d'embarquement sur les segments inclus dans l'itinéraire de voyage. [0003] Dans le contexte du transport aérien, un itinéraire de voyage peut inclure un ou plusieurs segments qui relient entre eux un lieu d'origine et un lieu de destination. Chaque segment peut se référer à l'exploitation d'un vol entre un point où les voyageurs montent en premier à bord d'un appareil, et un autre point où les voyageurs descendent de l'appareil. Un segment peut inclure une ou plusieurs liaisons, chaque liaison concernant l'exploitation de l'appareil d'une escale de départ programmée à la prochaine escale d'arrivée programmée. L'itinéraire de voyage peut inclure des segments connectés multiples, avec le voyageur devant changer d'appareil à chaque point de connexion entre les segments consécutifs. [0004] Parfois, un voyageur disposant d'un billet émis peut être dans l'obligation de modifier son itinéraire. Par exemple, après un événement qui a une incidence sur la programmation d'un segment (p. ex. l'annulation d'un vol de correspondance entre deux lieux), un voyageur dont l'itinéraire de voyage inclut le segment interrompu peut être amené à devoir modifier son itinéraire de voyage. La modification peut inclure le remplacement du segment interrompu, ou une combinaison de segments incluant le segment interrompu, avec un ou plusieurs segments de remplacement. Lorsqu'une solution appropriée est trouvée, un nouveau billet peut être émis. basé sur l'itinéraire modifié. Ce nouveau billet peut être échangé pour tout ou partie du billet précédemment détenu par le voyageur. Typiquement, le voyageur n'est pas facturé pour cet échange. [0005] Les procédures normales pour mettre à jour les enregistrements de base de données dans le système de gestion de voyage sont souvent court-circuités dans le cas de 3061575 2 changements involontaires de telle façon que les cartes d'embarquement peuvent être rapidement émises et sans frais supplémentaires pour le voyageur bloqué. Cela peut se traduire par des enregistrements de base de données inexacts. Les enregistrements de base de données peuvent être particulièrement problématiques si un autre changement dans l'itinéraire est souhaité à la suite d'un échange involontaire. [0006] Par conséquent, il est nécessaire d'avoir des systèmes améliorés, des procédés et des produits de programme informatique pour gérer les enregistrements de base de données dans les systèmes de gestion de voyage afin de conserver la pertinence des bases de données dans l'éventualité d'un échange involontaire de billet, et pour augmenter la vitesse et 10 l'efficacité avec lesquelles la donnée pertinente est récupérée dans les bases de données. RÉSUMÉ [0007] Dans un mode de réalisation, un système est fourni et inclut un ou plusieurs processeurs et une mémoire couplée aux processeurs. La mémoire peut stocker le code de programme qui, une fois exécuté par au moins un des processeurs, amène le système à 15 recevoir une interrogation identifiant un premier enregistrement de base de données stocké dans une première base de données, et récupérer, dans une deuxième base de données, un deuxième enregistrement de base de données indexé sur le premier enregistrement de base de données. Le deuxième enregistrement de base de données peut contenir un indice d'interruption qui inclut au moins un tableau définissant un ensemble d'éléments de données 20 liés. Le code de programme peut par ailleurs amener le système à identifier un ensemble d'enregistrements de base de données dans la première base de données qui inclut au moins un des éléments de base de données liés. L'ensemble des enregistrements de base de données qui inclut au moins un des éléments de données liés, peut inclure le premier enregistrement de base de données et un troisième enregistrement de base de données. Le code de programme 25 peut par ailleurs amener le système à générer un premier tableau à partir de l'ensemble des enregistrements de base de données en initialisant le premier tableau avec des éléments de données tirés du premier enregistrement de base de données, et en ajoutant au moins un élément de donnée du troisième enregistrement de base de données au premier tableau. [0008] Dans un autre aspect, les éléments de données dans le premier enregistrement de 30 base de données peuvent inclure une première série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, le troisième enregistrement de base de données peut inclure une deuxième série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, et le code de programme peut par ailleurs amener le système à générer le premier tableau en 3061575 3 sélectionnant un élément de donnée le plus récent auparavant non sélectionné dans le troisième enregistrement de base de données et en déterminant un statut pour l'élément de donnée sélectionné. En réponse au statut indiquant que l'élément de donnée sélectionné a été échangé, le code de programme peut amener le système à activer un signal d'échange et 5 supprimer l'élément de donnée sélectionné. En réponse au statut indiquant que l'élément de donnée sélectionné n'a pas été échangé, le code de programme peut amener le système à ajouter l'élément de donnée sélectionné à celui d'un deuxième tableau ou d'un troisième tableau. [0009] Dans un autre aspect, le code de programme peut par ailleurs amener le système à 10 ajouter l'élément de donnée sélectionné à un élément du premier tableau ou du deuxième tableau en ajoutant l'élément de donnée sélectionné au deuxième tableau si le signal d'échange n'est pas activé, et en ajoutant l'élément de donnée sélectionné au troisième tableau si le signal d'échange est activé. [0010] Dans un autre aspect, en réponse à l'élément de donnée sélectionné étant l'élément 15 de donnée le plus ancien du troisième enregistrement de base de données, le code de programme peut par ailleurs amener le système à mettre à jour le premier tableau en annexant le deuxième tableau au premier tableau avant l'élément de donnée le plus ancien du premier tableau, et en annexant le troisième tableau au premier tableau après l'élément de donnée le plus récent du premier tableau. 20 [0011] Dans un autre aspect, chaque enregistrement de base de données dans l'ensemble des enregistrements de base de données peut posséder un horodatage indiquant une heure à laquelle l'enregistrement de base de données a été ajouté à la première base de données, et l'ensemble des enregistrements de base de données peut inclure un quatrième enregistrement de base de données dont l'horodatage se produit après l'horodatage du troisième 25 enregistrement de base de données. En réponse au statut indiquant que l'élément de donnée sélectionné a été échangé, le code de programme peut par ailleurs amener le système à déterminer si l'élément de donnée sélectionné apparaît dans un élément de prix du quatrième enregistrement de base de données, et si l'élément de donnée sélectionné n'apparaît pas dans l'élément de prix du quatrième enregistrement de base de données, interrompre le traitement 30 des enregistrements de base de données. [0012] Dans un autre aspect, la première série d'éléments de données peut inclure un ensemble de coupons comprenant un premier billet, et la deuxième série d'éléments de données peut inclure un ensemble de coupons comprenant un deuxième billet. 3061575 4 [0013] Dans un autre aspect, le code de promumme peut par ailleurs amener le système à générer un billet hybride à partir du premier tableau, déterminer une première valeur pour le billet hybride à l'aide du moteur de tarification. et attribuer la première valeur au premier enregistrement de base de données. 5 [0014] Dans un autre aspect, le code de programme peut par ailleurs amener le système à déterminer une deuxième valeur pour un cinquième enregistrement de base de données pour lequel le premier enregistrement de base de données est en train d'être échangé à l'aide du moteur de tarification, déterminer une troisième valeur égale à la différence entre la deuxième valeur et la première valeur, et attribuer la troisième valeur au cinquième enregistrement de 10 base de données. [0015] Dans un autre aspect, le code de programme peut par ailleurs amener le système à trier l'ensemble des enregistrements de base de données basés sur l'horodatage de chaque enregistrement de base de données, de telle façon que l'ensemble est configuré en tant qu'une série d'enregistrements de base de données classés de l'enregistrement de base de données 15 ayant l'horodatage le plus ancien à l'enregistrement de base de données ayant l'horodatage le plus récent. [0016] Dans un autre mode de réalisation, le procédé de traitement des enregistrements de base de données est fourni. Le procédé peut inclure la réception de l'interrogation identifiant le premier enregistrement de base de données stocké dans la première base de données, et la 20 récupération, dans la deuxième base de données, du deuxième enregistrement de base de données indexé sur le premier enregistrement de base de données et contenant l'indice d'interruption qui inclut au moins un tableau qui définit l'ensemble des éléments de données liés. Le procédé peut par ailleurs inclure l'identification de l'ensemble des enregistrements de base de données dans la première base de données qui inclut au moins un des éléments de 25 base de données liés. L'ensemble d'enregistrements de base de données qui inclut au moins un des éléments de données liés peut inclure le premier enregistrement de base de données et le troisième enregistrement de base de données. Le procédé peut par ailleurs inclure la génération du premier tableau à partir de l'ensemble des enregistrements de données en initialisant le premier tableau avec des éléments de données issus du premier enregistrement 30 de base de données, et en ajoutant au moins un élément de donnée du troisième enregistrement de base de données au premier tableau. [0017] Dans un autre aspect. les éléments de données du premier enregistrement de base de données peuvent inclure la première série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, le troisième enregistrement de 3061575 base de données peut inclure la deuxième série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, et le procédé peut générer le premier tableau en sélectionnant le dernier élément de donnée auparavant non sélectionné dans le troisième enregistrement de base de données, déterminant le statut de l'élémentde 5 données sélectionné, en réponse au statut indiquant que l'élément de donnée sélectionné a été échangé, en activant l'indice d'échange et en supprimant l'élément de donnée sélectionné, et en réponse au statut indiquant que l'élément de donnée n'a pas été échangé, en ajoutant l'élément de donnée sélectionné à l'un du deuxième tableau ou du troisième tableau. [0018] Dans un autre aspect, le procédé peut ajouter l'élément de donnée sélectionné à un 10 élément du premier tableau ou du deuxième tableau en ajoutant l'élément de donnée sélectionné au deuxième tableau si le signal d'échange n'est pas activé, et en ajoutant l'élément de donnée sélectionné au troisième tableau si le signal d'échange est activé. [0019] Dans un autre aspect, en réponse à l'élément de donnée sélectionné étant l'élément de donnée le plus ancien du troisième enregistrement de base de données, le procédé peut 15 mettre à jour le premier tableau en annexant le deuxième tableau au premier tableau avant l'élément de donnée le plus ancien du premier tableau, et en annexant le troisième tableau au premier tableau après l'élément de donnée le plus récent du premier tableau. [0020] Dans un autre aspect, chaque enregistrement de base de données dans l'ensemble des enregistrements de base de données peut avoir l'horodatage indiquant l'heure à laquelle 20 l'enregistrement de base de données a été ajouté à la première base de données, l'ensemble des enregistrements de base de données peut inclure le quatrième enregistrement de base de données ayant l'horodatage survenant après l'horodatage du troisième enregistrement de base de données, et le procédé peut par ailleurs inclure, en réponse au statut indiquant que l'élément de donnée a été échangé, de déterminer si l'élément de donnée sélectionné apparaît 25 dans l'élément de prix du quatrième enregistrement de base de données, et si l'élément de donnée sélectionné n'apparaît pas dans l'élément de prix du quatrième enregistrement de base de données, interrompre le traitement des enregistrements de base de données. [0021] Dans un autre aspect, la première série d'éléments de données peut inclure l'ensemble des coupons comprenant le premier billet, et la deuxième série d'éléments de 30 données peut inclure l'ensemble de coupons comprenant le deuxième billet. [0022] Dans un autre aspect, le procédé peut par ailleurs inclure la génération du billet hybride à partir du premier tableau, la détermination de la première valeur pour le billet hybride à l'aide du moteur de tarification, et l'attribution de la première valeur au premier enregistrement de base de données. 3061575 6 [0023] Dans un autre aspect, le procédé peut inclure la détermination de la deuxième valeur pour le cinquième enregistrement de base de données pour lequel le premier enregistrement de base de données en train d'être échangé à l'aide du moteur de tarification, la détermination de la troisième valeur égale à la différence entre la deuxième valeur et la 5 première valeur, et l'attribution de la troisième valeur au cinquième enregistrement de base de données. [0024] Dans un autre aspect, le procédé peut par ailleurs inclure de trier l'ensemble des enregistrements de base de données d'après de l'horodatage de chaque enregistrement de base de données, de telle façon que l'ensemble est configuré en tant que la série d'enregistrements 10 de base de données classés de l'enregistrement de base de données possédant l'horodatage le plus ancien à l'enregistrement de base de données possédant l'horodatage le plus récent. [0025] Dans un autre aspect, le premier tableau peut définir un itinéraire hybride. [0026] Dans un autre mode de réalisation, un produit de programme informatique pour traiter les enregistrements de base de données est pourvu. Le produit de programme 15 informatique peut inclure un support de stockage durable lisible par ordinateur, et un code de programme stocké sur le support qui, lorsqu'il est exécuté par un ou plusieurs processeurs, amène les processeurs à recevoir l'interrogation identifiant le premier enregistrement de base de données stocké dans la première base de données, et à récupérer, dans la deuxième base de données, le deuxième enregistrement de base de données indexé sur le premier enregistrement 20 de base de données et contenant l'indice d'interruption qui inclut au moins un tableau qui définit l'ensemble des éléments de données liés. Le code de programme peut par ailleurs amener les processeurs à identifier l'ensemble des enregistrements de base de données dans la première base de données qui inclut au moins un des éléments de base de données liés. L'ensemble des enregistrements de base de données qui inclut au moins un des éléments de 25 données liés peut inclure le premier enregistrement de base de données et le troisième enregistrement de base de données. Le code de programme peut par ailleurs amener les processeurs à générer le premier tableau à partir de l'ensemble des enregistrements de base de données en initialisant le premier tableau avec des éléments de données tirés du premier enregistrement de base de données, et en ajoutant au moins un élément de donnée du 30 troisième enregistrement de base de données au premier tableau. [0027] Dans un autre mode de réalisation, un système est fourni et inclut un ou plusieurs processeurs et une mémoire couplée aux processeurs. La mémoire stocke les premières données comportant un indice pour la récupération d'information dans une base de données, et un code de programme. Lorsqu'il est exécuté par au moins un des processeurs, le code de 3061575 7 programme peut amener le système à récupérer, dans un premier enregistrement de données, la première donnée définissant un premier ensemble de coupons parents qui a été échangé pour un deuxième ensemble de coupons de remplacement en raison d'une interruption ayant eu une incidence sur ou plusieurs des coupons parents, et récupérer, dans un deuxième enregistrement de base de données, une deuxième donnée définissant le deuxième ensemble de coupons de remplacement. Le code de programme peut par ailleurs amener le système à définir un premier tableau d'opérateurs, chacun correspondant à un des coupons parents respectifs dans le premier ensemble des coupons parents, et indiquant si le coupon parent respectif correspond à l'interruption , définir un deuxième tableau d'opérateurs, chacun 10 correspondant à un des coupons de remplacement respectifs dans le deuxième ensemble des coupons de remplacement, et indiquant si le coupon parent respectif correspond à l'interruption, et définir un troisième tableau de liens, chacun liant au moins un coupon parent dans le premier ensemble à au moins un coupon de remplacement du deuxième ensemble. Le code de programme peut par ailleurs amener le système à stocker le premier tableau, le deuxième tableau, et le troisième tableau dans l'indice. [0028] Dans un autre aspect, le troisième tableau peut lier chaque coupon parent dans le premier ensemble à au moins un coupon de remplacement dans le deuxième ensemble, et lier chaque coupon de remplacement dans le deuxième ensemble à au moins un coupon parent dans le premier ensemble. 20 [0029] Dans un autre aspect, les coupons parents dans chacun des premier et deuxième ensemble peuvent être classés par ordre chronologique, et le code de programme peut amener le système à définir le premier tableau, le deuxième tableau, et le troisième tableau en sélectionnant un coupon parent le plus ancien dans le premier ensemble, en sélectionnant un coupon parent le plus ancien dans le deuxième ensemble, en comparant le coupon parent 25 sélectionné au coupon de remplacement sélectionné. En réponse au coupon parent sélectionné correspondant au coupon de remplacement sélectionné, le code de programme peut amener le système à ajouter un premier opérateur au premier tableau indiquant que le coupon parent sélectionné ne correspond pas à l'interruption, ajouter un deuxième opérateur au deuxième tableau indiquant que le coupon de remplacement sélectionné ne correspond pas à 30 l'interruption, et ajouter un premier lien au troisième tableau liant le coupon parent sélectionné au coupon de remplacement sélectionné. [0030] Dans un autre aspect, le coupon parent sélectionné et le coupon de remplacement sélectionné peuvent chacun être sélectionnés en se basant sur un compteur, et le code de programme peut par ailleurs amener le système à, en réponse au coupon parent sélectionné 3061575 correspondant au coupon de remplacement sélectionné, incrémenter le compteur pour sélectionner un coupon parent le plus ancien suivant et un coupon de remplacement le plus récent suivant, et sélectionner le coupon parent le plus ancien suivant et le coupon de remplacement le plus récent suivant pour une comparaison basée sur le compteur. Le code de 5 programme peut par ailleurs amener le système à incrémenter le compteur chaque fois que le coupon parent correspond au coupon de remplacement sélectionné. [0031] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, en réponse au coupon parent sélectionné ne correspondant pas au coupon de remplacement sélectionné, sélectionner un coupon parent le plus ancien dans le premier ensemble, 10 sélectionner un coupon de remplacement le plus récent dans le deuxième ensemble, et comparer le coupon parent le plus récent au coupon de remplacement le plus récent. En réponse au coupon parent sélectionné le plus récent correspondant au coupon de remplacement le plus récent, le code de programme peut par ailleurs amener le système à ajouter un troisième opérateur au premier tableau indiquant que le coupon parent sélectionné 15 le plus récent ne correspond pas à l'interruption, ajouter un quatrième opérateur au deuxième tableau indiquant que le coupon parent sélectionné le plus récent ne correspond pas à l'interruption, et ajouter un deuxième lien au troisième tableau liant le coupon parent le plus récent au coupon de remplacement le plus récent. [0032] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, 20 en réponse au coupon parent le plus récent ne correspondant pas au coupon de remplacement le plus récent, ajouter un cinquième opérateur au premier tableau indiquant que le coupon parent le plus récent correspond à l'interruption, ajouter un sixième opérateur au deuxième tableau indiquant que le coupon de remplacement le plus récent correspond à l'interruption, et ajouter un troisième lien au troisième tableau liant le coupon parent le plus récent au coupon 25 de remplacement le plus récent. [0033] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, en réponse au coupon parent sélectionné correspondant au coupon de remplacement sélectionné, déterminer si à la fois un coupon parent le plus ancien suivant existe dans le premier ensemble et un coupon de remplacement le plus ancien suivant existe dans le 30 deuxième ensemble, et ajouter uniquement le premier opérateur au premier tableau, le deuxième opérateur au deuxième tableau, et le premier lien au troisième tableau si le coupon parent le plus ancien suivant et le coupon de remplacement le plus ancien suivant existent tous deux. 3061575 [0034] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, en réponse à au moins un coupon parent le plus ancien et le coupon de remplacement suivant le plus ancien suivant n'existant pas, si le coupon parent le plus récent suivant existe, ajouter pour chaque coupon parent restant dans le premier ensemble, un opérateur respectif au premier tableau indiquant que le coupon parent respectif correspond à l'interruption. Le code de programme peut également amener le système à, en réponse au moins au coupon parent le plus ancien et le coupon de remplacement suivant le plus ancien inexistant, si le coupon de remplacement suivant le plus ancien existe, ajouter pour chaque coupon parent restant dans le deuxième ensemble, un opérateur respectif au deuxième tableau indiquant que le coupon 10 respectif de remplacement correspond à l'interruption. [0035] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, si le coupon parent le plus ancien existe, ajouter pour chaque coupon parent restant dans le premier ensemble, un lien respectif au troisième tableau liant le coupon parent au coupon de remplacement le plus récent dans le deuxième ensemble, et si le coupon de remplacement le 15 plus ancien suivant existe, ajouter pour chaque coupon de remplacement restant dans le premier ensemble, un lien respectif au troisième tableau liant le coupon de remplacement à un coupon parent le plus récent dans le premier ensemble. [0036] Dans un autre mode de réalisation, un procédé générant l'indice destiné à récupérer des informations dans la base de données est pourvu. Le procédé peut inclure de 20 récupérer, à partir du premier enregistrement de base de données, la première donnée définissant le premier ensemble de coupons parents ayant été échangés pour le deuxième ensemble de coupons de remplacement en raison de l'interruption ayant eu une incidence sur ou plusieurs des coupons parents, et récupérer, dans le deuxième enregistrement de base de données, la deuxième donnée définissant le deuxième ensemble de coupons de remplacement. 25 Le procédé peut par ailleurs inclure de définir le premier tableau d'opérateurs, chacun correspondant à l'un des coupons parents respectifs dans le premier ensemble des coupons parents, et indiquant si le coupon parent respectif correspond à l'interruption, définir le deuxième tableau d'opérateurs, chacun correspondant au coupon respectif des coupons de remplacement dans le deuxième ensemble des coupons de remplacement, et indiquant si le 30 coupon de remplacement respectif correspond à l'interruption, et définir le troisième tableau de liens, chacun liant au moins un coupon parent dans le premier ensemble à au moins un coupon de remplacement du deuxième ensemble. Le procédé peut par ailleurs inclure le stockage du premier tableau, du deuxième tableau, et du troisième tableau dans J'indice. 3061575 10 [0037] Dans un autre aspect, le troisième tableau peut lier chaque coupon parent dans le premier ensemble à au moins un coupon de remplacement dans le deuxième ensemble, et lier chaque coupon de remplacement dans le deuxième ensemble à au moins un coupon parent dans le premier ensemble. 5 [0038] Dans un autre aspect, les coupons parents dans le premier ensemble et les coupons de remplacement dans le deuxième ensemble peuvent être classés par ordre chronologique, et le premier tableau, le deuxième tableau, et le troisième tableau peuvent être définis en sélectionnant le coupon parent le plus ancien dans le premier ensemble, sélectionnant le coupon de remplacement le plus ancien dans le deuxième ensemble, et en comparant le 10 coupon parent sélectionné au coupon de remplacement sélectionné. En réponse au coupon parent sélectionné correspondant au coupon de remplacement sélectionné, le procédé peut ajouter le premier opérateur au premier tableau indiquant que le coupon parent sélectionné ne correspond pas à l'interruption, ajouter le deuxième opérateur au deuxième tableau indiquant que le coupon de remplacement sélectionné ne correspond pas à l'interruption, et ajouter le 15 premier lien au troisième tableau liant le coupon parent sélectionné au coupon de remplacement sélectionné. [0039] Dans un autre aspect, le coupon parent sélectionné et le coupon de remplacement sélectionné peuvent chacun être sélectionnés en se basant sur un compteur, et le procédé peut par ailleurs inclure, en réponse au coupon parent sélectionné correspondant au coupon de 20 remplacement sélectionné, incrémenter le compteur pour sélectionner le coupon parent le plus ancien suivant et le coupon de remplacement le plus ancien suivant pour une comparaison basée sur le compteur, où le compteur est incrénienté chaque fois que le coupon parent sélectionné correspond au coupon de remplacement sélectionné. [0040] Dans un autre aspect, en réponse au coupon parent sélectionné ne correspondant 25 pas au coupon de remplacement sélectionné, le procédé peut sélectionner le coupon parent le plus ancien dans le premier ensemble, sélectionner le coupon de remplacement le plus récent dans le deuxième ensemble, et comparer le coupon parent le plus récent au coupon de remplacement le plus récent. En réponse au coupon parent sélectionné le plus récent correspondant au coupon de remplacement le plus récent, le procédé peut ajouter le troisième 30 opérateur au premier tableau indiquant que le coupon parent le plus récent ne correspond pas à l'interruption, et ajouter le deuxième lien au troisième tableau associant le coupon parent le plus récent au coupon de remplacement le plus récent. [00411 Dans un autre aspect, en réponse au coupon parent le plus récent ne correspondant pas au coupon de remplacement le plus récent, le procédé peut ajouter le cinquième opérateur 3061575 11 au premier tableau indiquant que le coupon parent le plus récent correspond à l'interruption, ajouter un sixième opérateur au deuxième tableau indiquant que le coupon de remplacement le plus récent correspond à l'interruption, et ajouter le quatrième opérateur au deuxième tableau indiquant que le coupon de remplacement le plus récent ne correspond pas à 5 l'interruption, et ajouter le deuxième lien au troisième tableau associant liant le coupon parent le plus récent au coupon de remplacement le plus récent. [0042] Dans un autre aspect, en réponse au coupon parent sélectionné correspondant au coupon de remplacement sélectionné, le procédé peut déterminer si à la fois le coupon parent le plus ancien suivant existe dans le premier ensemble et le coupon de remplacement le plus 10 ancien suivant existe dans le deuxième ensemble, et ajouter uniquement le premier opérateur au premier tableau, le deuxième opérateur au deuxième tableau, et le premier lien au troisième tableau si le coupon parent le plus récent suivant et le coupon de remplacement le plus récent suivant existent tous deux. [0043] Dans un autre aspect, en réponse au moins à un coupon parent le plus ancien 15 suivant et le coupon de remplacement suivant le plus ancien n'existant pas, si le coupon parent le plus récent suivant existe, le procédé peut ajouter, pour chaque coupon parent restant dans le premier ensemble, l'opérateur respectif au premier tableau indiquant que le coupon parent respectif correspond à l'interruption. En réponse au moins au coupon parent le plus ancien suivant et le coupon de remplacement suivant le plus ancien n'existant pas, si le 20 coupon de remplacement le plus ancien suivant existe, le procédé peut également ajouter pour chaque coupon parent restant dans le deuxième ensemble, l'opérateur respectif au deuxième tableau indiquant que le coupon de remplacement respectif correspond à l'interruption. [0044] Dans un autre aspect, si le coupon parent le plus ancien existe, le procédé peut inclure d'ajouter pour chaque coupon parent restant dans le deuxième ensemble, le lien 25 respectif au troisième tableau liant le coupon parent au coupon de remplacement le plus récent dans le deuxième ensemble. Si le coupon de remplacement le plus ancien suivant existe, le procédé peut également ajouter, pour chaque coupon de remplacement restant dans le deuxième ensemble, le lien respectif au troisième tableau liant le coupon de remplacement au coupon parent le plus récent dans le premier ensemble. 30 [0045] Dans un autre aspect, chaque coupon dans le premier ensemble de coupons parents peut comporter un statut et une heure de départ, et la récupération de la première donnée définissant le premier ensemble de coupons parents peut comprendre le filtrage de chaque coupon parent pour lequel le statut est parcouru, ou pour lequel l'heure de départ est 3061575 12 antérieure à l'heure de départ d'un autre coupon parent ayant le statut parcouru, dans le premier ensemble de coupons parents. [0046] Dans un autre mode de réalisation, un produit de programme informatique générant l'indice pour la récupération des informations dans la base de données est pourvu. Le produit de programme informatique peut inclure un support de stockage durable lisible par ordinateur, et un code de programme stocké sur le support qui, lorsqu'il est exécuté par un ou plusieurs processeurs, amène les processeurs à récupérer, à partir du premier enregistrement de base de données, la première donnée définissant le premier ensemble de coupons parents ayant été échangé pour le deuxième ensemble de coupons de remplacement en raison de 10 l'interruption qui a eu une incidence sur un ou plusieurs des coupons parents, et récupérer, à partir du deuxième enregistrement de base de données, la deuxième donnée définissant le deuxième ensemble de coupons de remplacement. Le code de programme peut par ailleurs amener les processeurs à définir le premier tableau d'opérateurs, chacun correspondant à l'un des coupons parents respectifs dans le premier ensemble des coupons parents, et indiquant si 15 le coupon parent respectif correspond à l'interruption, définir le deuxième tableau d'opérateurs, chacun correspondant au coupon respectif des coupons de remplacement dans le deuxième ensemble des coupons de remplacement, et indiquant si le coupon de remplacement respectif correspond à l'interruption, et définir le troisième tableau de liens, chacun associant au moins un coupon parent dans le premier ensemble à au moins un coupon de remplacement 20 du deuxième ensemble. Le code de programme peut par ailleurs amener les processeurs à stocker le premier tableau, le deuxième tableau, et le troisième tableau dans l'indice. [0047] Dans un autre mode de réalisation, un système est pourvu qui inclut un ou plusieurs processeurs et une mémoire couplée aux processeurs. La mémoire peut stocker le code de programme qui, une fois exécuté par au moins un des processeurs, amène le système 25 à récupérer. à partir d'un premier enregistrement de base de données, la première donnée définissant un premier ensemble de premiers coupons, et récupérer, à partir d'un deuxième enregistrement de base de données, une deuxième base de données définissant un deuxième ensemble de segments. Le code de programme peut par ailleurs, pour chaque segment dans le deuxième ensemble, générer un deuxième coupon correspondant au segment, et identifier 30 chaque premier coupon pour lequel le deuxième coupon est un remplacement. Le code de programme peut par ailleurs amener le système à, pour chaque premier coupon identifié, créer un tableau qui inclut un premier élément de coupon qui identifie le premier coupon et un deuxième élément de coupon qui identifie le deuxième coupon et est lié au premier élément 3061575 13 de coupon. Le code de programme peut par ailleurs amener le système à ajouter tableau à un premier indice. [0048] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, pour chaque tableau dans le premier indice, déterminer si le premier coupon a subi l'incidence 5 d'une interruption, et, si l'interruption a eu une incidence sur le premier coupon, signaler le premier coupon comme correspondant à l'interruption. [00491 Dans un autre aspect, le premier indice peut être généré en réponse à la réception d'une première demande d'échange d'un premier billet pour un deuxième billet, et stocké dans un troisième enregistrement de base de données. En réponse à la réception d'une 10 demande d'affichage du deuxième billet, le code de programme peut amener le système à récupérer le premier indice dans le troisième enregistrement de base de données, et pour chaque tableau dans le premier indice, récupérer la troisième donnée qui définit le deuxième coupon, récupérer la quatrième donnée qui définit le premier coupon lié au deuxième coupon, et récupérer la cinquième donnée qui identifie si le premier coupon lié au deuxième coupon 15 est bien signalé comme correspondant à l'interruption. Le code de programme peut par ailleurs amener le système à utiliser la troisième donnée, la quatrième donnée, et la cinquième donnée pour transmettre une réponse à l'interrogation, la réponse étant configurée pour amener le système demandeur à afficher, pour chaque deuxième coupon défini par la troisième donnée, la sixième donnée qui définit le deuxième coupon, le premier coupon qui 20 est lié au deuxième coupon, et si le premier coupon correspond bien à l'interruption. [0050] Dans un autre aspect, le code de programme peut par ailleurs amener le système à déterminer si le système demandeur est compatible avec une partie de la sixième donnée qui définit le premier coupon qui est lié au deuxième coupon, et si le système demandeur est incompatible, filtrer la partie de la sixième donnée provenant de la réponse. 25 [0051] Dans un autre aspect, le premier indice peut être stocké dans un troisième enregistrement de base de données, et le code de programme peut par ailleurs amener le système à, pour chaque premier coupon dans le premier ensemble, extraire, à partir du premier enregistrement de base de données, un composant tarifaire du premier coupon, stocker le composant tarifaire dans un élément de prix, stocker la troisième donnée identifiant 30 le premier coupon et le premier enregistrement de base de données dans un élément de produit, lier l'élément de prix et l'élément de produit pour définir une structure de donnée, et ajouter la structure de donnée à un deuxième indice. Le code de programme peut par ailleurs amener le système à stocker le deuxième indice dans le troisième enregistrement de base de données. 3061575 14 [0052] Dans un autre aspect, le premier enregistrement de base de données peut inclure un billet original, le deuxième enregistrement de base de données peut inclure un dossier de réservation, le premier indice peut inclure un indice d'interruption, et le deuxième index peut inclure un indice de structure tarifaire. 5 [0053] Dans un autre aspect, le premier indice peut être généré en réponse à la réception d'une première demande d'échange d'un premier billet pour un deuxième billet, et le code de programme peut par ailleurs amener le système à, en réponse à la réception d'une deuxième demande d'échange du deuxième billet pour un troisième billet, récupérer, à partir du deuxième enregistrement de base de données, la troisième donnée définissant un troisième 10 ensemble de segments Le code de programme peut par ailleurs amener le système à, pour chaque segment dans le troisième ensemble de segments, générer un troisième coupon correspondant au segment, et identifier chaque deuxième coupon pour lequel le troisième coupon est le remplaçant. Pour chaque deuxième coupon identifié, le code de programme peut amener le système à identifier chaque tableau correspondant au deuxième coupon, ajouter un 15 troisième élément de coupon qui identifie le troisième coupon au tableau identifié, et lier le troisième élément de coupon au deuxième élément de coupon. Le premier indice peut par conséquent être configuré pour pourvoir un mappage entre chaque troisième coupon et au moins un premier coupon correspondant. [0054] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, 20 pour chaque première structure de donnée dans le premier indice, déterminer si le deuxième coupon a subi l'incidence d'une interruption, et si l'interruption a eu une incidence sur le deuxième coupon, signaler le deuxième coupon comme étant interrompu. [0055] Dans un autre aspect, le code de programme peut par ailleurs amener le système à, pour chaque deuxième coupon, déterminer si le deuxième coupon est en train d'être remplacé 25 par plus qu'un troisième coupon. Si le deuxième coupon est en train d'être remplacé par plus qu'un troisième coupon, le code de programme peut amener le système à identifier chaque tableau qui inclut le deuxième élément de coupon correspondant au deuxième coupon, et pour chaque tableau identifié, générer des doublons du tableau identifié de telle façon qu'un tableau correspondant existe pour accepter le troisième élément de coupon, chaque troisième 30 coupon remplaçant le deuxième coupon. [0056] Dans un autre mode de réalisation, un procédé indexant les enregistrements de base de données pour la récupération d'informations est pourvu. Le procédé peut inclure de récupérer, dans le premier enregistrement de base de données, la première donnée définissant le premier ensemble de premiers coupons, et récupérer, dans le deuxième enregistrement de 3061575 base de données, la deuxième donnée définissant le deuxième ensemble de segments. Le procédé peut par ailleurs inclure, pour chaque segment dans le deuxième ensemble, la génération du deuxième coupon correspondant au segment, et l'identification de chaque premier coupon pour lequel le deuxième coupon est le coupon de remplacement. Pour chaque premier coupon identifié, le procédé peut créer le tableau qui inclut le premier élément de coupon qui identifie le premier coupon et le deuxième élément de coupon qui identifie le deuxième coupon et est lié au premier élément de coupon. Le procédé peut par ailleurs ajouter le tableau au premier indice. [0057] Dans un autre aspect, le procédé peut par ailleurs inclure, pour chaque tableau dans 10 le premier indice, de déterminer si le premier coupon a subi l'incidence de l'interruption, et si l'interruption a eu une incidence sur le premier coupon, signaler le premier coupon comme correspondant à l'interruption. [0058] Dans un autre aspect, le premier indice peut être généré en réponse à la réception de la première demande d'échange du premier billet pour le deuxième billet et stocké dans le 15 troisième enregistrement de base de données, et le procédé peut par ailleurs inclure de recevoir la demande d'affichage du deuxième billet. En réponse à la réception de la demande, le procédé peut récupérer le premier indice dans le troisième enregistrement de base de données. Pour chaque tableau dans le premier indice, le procédé peut récupérer la troisième donnée qui définit le deuxième coupon, récupérer la quatrième donnée qui définit le premier 20 coupon lié au deuxième coupon, et récupérer la cinquième donnée qui identifie si le premier coupon lié au deuxième coupon est bien signalé comme correspondant à l'interruption. Le procédé peut par ailleurs inclure d'utiliser la troisième donnée, la quatrième donnée, et la cinquième donnée pour transmettre la réponse à la demande, la réponse étant configurée pour amener le système demandeur à afficher, pour chaque deuxième coupon défini par la 25 troisième donnée, la sixième donnée qui définit le deuxième coupon, le premier coupon qui est lié au deuxième coupon, et si le premier coupon correspond bien à l'interruption. [0059] Dans un autre aspect, le procédé peut par ailleurs inclure de déterminer si le système demandeur est compatible avec la partie de la sixième donnée qui définit le premier coupon qui est lié au deuxième coupon, et si le système demandeur est incompatible, de filtrer 30 la partie de la sixième donnée provenant de la réponse. [0060] Dans un autre aspect, si le système demandeur est compatible avec la partie de la sixième donnée, il peut être déterminé à partir d'une identité du système demandeur, ou le statut du signal dans la demande. 3061575 16 [0061] Dans un autre aspect, le premier indice peut être stocké dans Je troisième enregistrement de base de données, et pour chaque premier coupon dans le premier ensemble, le procédé peut par ailleurs inclure d'extraire le composant tarifaire du premier coupon dans le premier enregistrement de base de données, stocker le composant tarifaire dans l'élément 5 de prix, stocker la troisième donnée identifiant le premier coupon et le premier enregistrement de base de données dans élément de produit, lier l'élément tarifaire et l'élément de produit pour définir la structure de donnée, et ajouter la structure de donnée au deuxième indice. Le procédé peut ensuite stocker lecleuxième indice dans le troisième enregistrement de base de données. 10 [0062] Dans un autre aspect, le premier indice peut être généré en réponse à la réception de la première demande demandant d'échanger le premier billet pour le deuxième billet, et le procédé peut par ailleurs inclure, en réponse à la réception de la deuxième demande d'échanger le deuxième billet pour le troisième billet, récupérer, à partir du deuxième enregistrement de base de données, la troisième donnée définissant le troisième ensemble de 15 segments. Pour chaque segment dans le troisième ensemble de segments, le procédé peut générer le troisième coupon correspondant au segment, et identifier chaque deuxième coupon pour lequel le troisième coupon est le remplaçant. Pour chaque deuxième coupon identifié, le procédé peut identifier chaque tableau correspondant au deuxième coupon, ajouter le troisième élément de coupon qui identifie le troisième coupon au tableau identifié, et lier le 20 troisième élément de coupon au deuxième élément de coupon. Le premier indice peut ainsi être configuré pour pourvoir le mappage entre chaque troisième coupon et celui au moins correspondant au premier coupon. [0063] Dans un autre aspect. le procédé peut par ailleurs inclure, pour chaque première structure de donnée dans le premier indice, de déterminer si l'interruption a eu une incidence 25 sur le deuxième coupon, et, si l'interruption a eu une incidence sur le deuxième coupon, signaler le deuxième coupon comme étant interrompu. [0064] Dans un autre aspect, le procédé peut par ailleurs inclure, pour chaque deuxième coupon, de déterminer si le deuxième coupon est remplacé par plus qu'un troisième coupon. Si le deuxième coupon est remplacé par plus d'un troisième coupon, le procédé peut identifier 30 chaque tableau qui inclut le deuxième élément de coupon correspondant au deuxième coupon, et, pour chaque tableau identifié, générer des doublons du tableau identifié de telle façon que le tableau correspondant existe pour accepter le troisième élément de coupon pour chaque troisième coupon remplaçant le deuxième coupon. 3061575 [0065] Dans un autre mode de réalisation, un produit de programme informatique pour traiter des enregistrements de base de données est pourvu. Le produit de programme informatique peut inclure un support de stockage durable lisible par ordinateur, et un code de programme stocké sur le support qui, lorsqu'il est exécuté par un ou plusieurs processeurs, 5 amène les processeurs à récupérer, à partir du premier enregistrement de base de données stocké, la première donnée définissant le premier ensemble de premiers coupons, et à récupérer, à partir de l'enregistrement de la deuxième base de données, la deuxième donnée définissant le deuxième ensemble de segments. Le code de programme peut par ailleurs amener les processeurs à, pour chaque segment dans le deuxième ensemble, générer le 10 deuxième coupon correspondant au segment, et identifier chaque premier coupon pour lequel le deuxième coupon est le remplaçant. Le code de programme peut par ailleurs amener les processeurs à, pour chaque premier coupon identifié, créer le tableau qui inclut le premier élément de coupon qui identifie le premier coupon et le deuxième élément de coupon qui identifie le deuxième coupon et est lié au premier élément de coupon. Le code de programme 15 peut par ailleurs amener les processeurs à ajouter le tableau au premier indice. [0066] Le résumé ci-dessus peut présenter une vue d'ensemble simplifiée de certains modes de réalisation de l'invention afin de donner une compréhension basique de certains aspects de l'invention discutée dans les présentes. Le résumé ne prétend pas apporter une vue d'ensemble exhaustive de l'invention et n'est pas destiné à identifier tout élément clé ou 20 critique ou à limiter la portée de l'invention. Le seul but du résumé est de présenter simplement quelques concepts sous une forme simplifiée comme préambule à la description détaillée présentée ci-dessous. BRÈVE DESCRIPTION DES DESSINS [0067] Les dessins, qui font partie intégrante des spécifications, illustrent des modes 25 variés de réalisation de l'invention et, avec la description générale de l'invention ci-dessus et la description détaillée des modes de réalisation donnée ci-après, servent à expliquer les modes de réalisation de l'invention. [0068] La FIG. 1 est une vue schématique d'un environnement d'exploitation exemplaire incluant un système de gestion de base de données dans la communication avec un système 30 utilisateur, un système de pourvoyeur, une base de données de réservation, et une base de données de billets. [0069] La FIG. 2 est une vue schématique d'un ordinateur exemplaire pouvant être utilisé pour pourvoir l'environnement d'exploitation de la FIG. 1. 3061575 [0070] La FIG. 3 est une vue schématique d'une image d'un dossier de réservation qui peut être stocké dans la base de données de réservation de la FIG. 1. [0071] La FIG. 4 est une vue schématique d'une image d'un billet original qui peut être stocké dans la base de données de billets de la FIG. 1. 5 [0072] La FIG. 5 est une vue schématique de l'image du dossier de réservation de la FIG. 3 avec un itinéraire mis à jour. [0073] La FIG. 6 est une vue schématique de l'image du billet original de la FIG. 4 et une image d'un billet réémis qui peut avoir été émis en réponse à l'exécution d'une réémission partielle de billets en fonction de l'itinéraire mis à jour défini par le dossier de réservation de 10 la FIG. 5. [0074] La FIG. 7 est une vue schématique de l'image du billet original de la FIG. 4 et une image d'un billet réémis qui peut avoir été émis en réponse à l'exécution d'une réémission complète de billets en fonction de l'itinéraire mis à jour défini par le dossier de réservation de la FIG. 5. 15 [0075] La FIG. 8 est un organigramme d'un procédé d'échange de billet qui peut être mis en oeuvre par le système de gestion de base de données de la FIG. 1. [0076] La FIG. 9 est une vue schématique d'un indice d'échange qui peut être utilisé par le processus de la FIG. 8 pour effectuer l'échange de billet. [0077] Les FIG. 10 à 13 décrivent un organigramme d'un processus destiné à produire 20 l'indice d'échange de la FIG. 9. [0078] Les FIG. 14 à 18 constituent les vues schématiques des ensembles exemplaires de coupons qui démontrent le processus des FIG. 10 à 13 telles qu'appliquées à un certain nombre de scénarios différents d'échange de billets. [0079] La FIG. 19 est une vue schématique d'un enregistrement de transition qui inclut un 25 indice des interruptions qui peut être déterminé sur la base de l'indice d'échange de la FIG. 9. [0080] La FIG. 20 est une vue schématique d'une image d'une version mise à jour du dossier de réservation de la FIG. 5, et un certain nombre d'images de billets ayant pu avoir été émis sur la base du dossier de réservation mis à jour. [0081] La FIG. 21 est une vue schématique de l'enregistrement de transition issu de la 30 FIG. 19 tel qu'il peut apparaître après l'émission des billets réémis de la FIG. 20. [0082] La FIG. 22 est une vue schématique des images enrichies d'un billet parent exemplaire et d'un billet exemplaire de réémission pouvant être affichés par le système utilisateur de la FIG. I. 3061575 19 [0083] La FIG. 23 est une vue schématique d'une image enrichie d'un billet exemplaire de réémission émis en réponse à un échange du billet réémis dans la FIG. 22. [0084] La FIG. 24 est une vue schématique d'une version exemplaire masquée de l'image enrichie de la FIG. 23. 5 [0085] La FIG. 25 est une vue schématique d'une image d'un billet exemplaire original. [0086] La FIG. 26 est une vue schématique d'une image du billet original de la FIG. 25 et une image d'un billet exemplaire réémis après un échange du billet original concernant le billet réémis. [0087] La FIG. 27 est une vue schématique des images du billet original et du billet 10 réémis de la FIG. 26, et une image d'un billet exemplaire réémis émis en échange du billet réémis le plus ancien. [0088] La FIG. 28 est une vue schématique d'un enregistrement de transition ainsi que d'un billet hybride, un itinéraire payé, un itinéraire de cotation, et un enregistrement de cotation tarifaire qui peuvent être générés à partir des données stockées dans l'enregistrement de transition. [0089] La FIG. 29 est une vue schématique du système de gestion de base de données de la FIG. 1 montrant les informations supplémentaires du système. [0090] La FIG. 30 est un organigramme d'un processus d'échange de billet qui peut être mis en oeuvre par le système de gestion de base de données de la FIG. 29. 20 [0091] Les FIG. 31 et 32 sont des vues schématiques des dossiers qui peuvent amener le système de gestion de base de données de la FIG. 29 à mettre en application une partie du processus de la FIG. 30. [0092] La FIG. 33 est un organigramme d'un processus qui peut être mis en oeuvre par le système de gestion de base de données de la FIG. 29 pour générer un itinéraire hybride. 25 DESCRIPTION DÉTAILLÉE [0093] Des modes de réalisation de l'invention peuvent être mis en oeuvre par un système de traitement de données qui fournit le traitement et les fonctions de base de données permettant des interconnexions entre une pluralité de systèmes de base de données. Les modes de réalisation de l'invention peuvent inclure un système de gestion de base de données 30 qui fournit une interface entre un système utilisateur, un système pourvoyeur, et les systèmes de base de données. Le système de gestion de base de données peut inclure un serveur d'échange qui génère un enregistrement transitoire. L'enregistrement de transition peut stocker les données utilisées pour gérer les mises à jour des billets et les enregistrements des bases de données de réservation découlant des demandes d'échange d'un billet dans le 3061575 20 système utilisateur. L'enregistrement transitoire peut inclure un indice de structure tarifaire ainsi qu'un indice d'interruption qui pourvoit une fonction de mappage entre les enregistrements dans les bases de données de réservation et de billets. Cette fonction de mappage peut augmenter la vitesse et l'efficacité avec lesquelles le serveur d'échange traite 5 des enregistrements de base de données en réponse à la réception d'une demande d'échange d'un billet. [0094] Faisant référence maintenant à la FIG. 1, un environnement d'exploitation 10 conformément à un mode de réalisation de l'invention peut inclure un système de gestion de base de données 12, un système utilisateur 14, un système pourvoyeur 16, une base de 10 données de réservation 18, et une base de données de billets 20. Chacun des systèmes de gestion de base de données 12, systèmes utilisateur 14, système pourvoyeur 16, base de données de réservation 18, et base de données de billets 20 est en mesure de communiquer par un réseau 22. Le réseau 22 peut inclure un ou plusieurs réseaux informatiques privés ou publics (par ex, Internet) permettant l'échange de données entre les systèmes connectés au 15 réseau 22. [0095] Le système de gestion de base de données 12 peut inclure un serveur de billetterie électronique (JETS) 24, un serveur d'échange 26, ainsi qu'une base de données transitoire 28. Le système de gestion de base de données 12 peut être configure pour recevoir et traiter des requêtes émises par le système utilisateur 14 et/ou le système pourvoyeur 16. Le système de 20 gestion de base de données 12 peut recevoir et traiter des interrogations telles que des interrogations de recherche, des interrogations portant sur des informations tarifaires, des interrogations portant sur des confirmations tarifaires, des demandes des émissions de billets, des demandes de réémission/d'échange de billet, ou toute autre interrogation liée aux recherches, à la tarification, aux réservations, et à l'émission de billets pour des produits de 25 voyage. En réponse à la réception d'une interrogation, le système de gestion de base de données 12 peut communiquer avec un ou plusieurs systèmes utilisateur 14, système pourvoyeur 16, base de données de réservation 18, base de données de billets 20, ou tout autre système pour traiter l'interrogation. Dans un mode de réalisation, le système de gestion de base de données 12 peut comprendre un Système de distribution globale (GDS). 30 [0096] Le système utilisateur 14 peut être un système d'agence de voyage, un système de réservation de compagnie aérienne, un système de site Web de voyages, ou tout autre système utilisé pour rechercher, réserver, acheter, et/ou échanger des produits de voyage. Les interrogations transmises au système de gestion de base de données 12 par le système utilisateur 14 peuvent inclure des données définissant une origine, une destination, un certain 3061575 21 nombre d'espaces à réserver, une période durant laquelle le voyage est souhaité, un vol en particulier, ou toute autre information ayant trait à l'objet de l'interrogation. [0097] Le système pourvoyeur 16 peut inclure un système de réservation informatique (CRS) qui permet au système de gestion de base de données 12 de réserver et de payer des 5 produits de voyage, tels que des billets d'avion. Pour les pourvoyeurs de voyage aérien, le CRS peut gérer les réservations des espaces entre les noeuds d'un réseau de voyage. Chaque noeud du réseau de voyage peut comporter une escale (par ex. un aéroport) à destination de et à partir de laquelle le pourvoyeur exploite les vols. Le système pourvoyeur 16 peut également interagir avec d'autres systèmes pourvoyeurs, soit directement soit par l'entremise du système 10 de gestion de base de données 12, pour permettre à un transporteur émetteur de vendre des billets pour les espaces fournis par le transporteur de fait. Le transporteur de fait peut alors facturer le transporteur émetteur pour les produits fournis. [0098] En réponse au système utilisateur 14 transmettant une demande de réservation d'un produit de voyage, tel qu'un vol, le système de gestion de base de données 12 peut 15 produire un nouveau dossier de réservation et/ou modifier un dossier de réservation existant dans la base de données de réservation 18. Le dossier de réservation peut inclure un ou plusieurs éléments de données, ou « éléments » qui contiennent les données qui définissent l'itinéraire et les informations voyageur liées relevant d'un ou de plusieurs produits de voyage réservés. L'itinéraire peut inclure des produits de voyage émanant de plusieurs pourvoyeurs 20 de produits de voyage. Dans le contexte du transport aérien, l'itinéraire peut inclure un ensemble de segments comportant un ou plusieurs vols entre un point d'origine et une destination. Pour faciliter la localisation du dossier de réservation dans la base de données de réservations 18, un localisateur d'enregistrement ou tout autre identificateur approprié peut être associé au dossier de réservation. Dans un mode de réalisation, le dossier de réservation 25 peut comporter un dossier de nom de passager (FNP) stocké dans une base de données PNP. [0099] Le dossier de réservation peut inclure les éléments qui identifient les segments sur lesquels l'espace a été réservé. Une distinction doit être faite en un espace et un siège basé sur le concept de la surréservation. La surréservation est la pratique qui consiste pour les pourvoyeurs à réserver plus d'espaces que de nombre de sièges physiques sur un vol, 30 anticipant ainsi le fait qu'en raison de la non-présentation de certains passagers au moment du départ de l'appareil, des espaces réservés demeureront inutilisés. Un segment peut faire référence à l'exploitation d'un avion entre un point où les passagers montent en premier à bord de l'appareil et un point où les passagers quittent en dernier lieu l'appareil. Un segment peut inclure tout un nombre d'arrêts au cours desquels les passagers peuvent sortir et 3061575 22 rembarquer à bord du même appareil. Un vol peut se rapporter à l'exploitation d'un ou de plusieurs segments avec le même numéro de vol, et peut impliquer plusieurs appareils. Pour réserver un vol qui inclut des segments multiples, des éléments multiples, chacun définissant un segment du vol, peuvent être créés dans le dossier de réservation. 5 [00100] La réservation d'un produit de voyage peut inclure la vérification de la disponibilité du produit dans l'inventaire du pourvoyeur pour assurer la disponibilité du produit, comme par ex. l'espace disponible sur les segments comprenant l'itinéraire. Cette vérification peut inclure d'envoyer une demande de réservation du système utilisateur 14 au système de gestion de base de données 12. Le système de gestion de base de données 12 peut 10 alternativement interroger un système pourvoyeur correspondant 16 sur la disponibilité des produits demandés. Si les produits demandés sont disponibles, les produits peuvent être réservés, et l'inventaire du pourvoyeur est dès lors diminué pour refléter la réservation. [00101] L'ETS 24 peut être configuré pour gérer les enregistrements dans la base de données de billet 20 qui se rapportent à l'émission, la modification, et l'utilisation des billets. 15 Chaque billet peut comporter un enregistrement de base de données qui définit les informations de vol telles que le transporteur émetteur, le numéro de vol, le point de départ du vol, la destination du vol, la classe de réservation, les dates du vol, et le prix payé pour le billet. L'enregistrement de billet peut également inclure un horodatage qui indique quand le billet « a été émis », à savoir ajouté ou engagé dans la base de données de billet 20. Des billets 20 peuvent être émis par l'ETS 24 en réponse à la réception d'une indication selon laquelle un dossier de réservation lié a été confirmé. L'ETS 24 peut générer des éléments dans le billet sur la base des données stockées dans le dossier de réservation. Ces informations peuvent inclure des renseignements pour chaque segment défini dans le dossier de réservation, telles que la classe de réservation, la date de départ, le point d'embarquement, le point de 25 débarquement, une identité du passager, une ou plusieurs formes de paiement utilisées pour acheter le segment, etc. [00102] Le billet peut inclure les éléments qui définissent un « coupon ». Pour un itinéraire donné, un ou plusieurs billets peuvent être émis pour un passager, incluant des coupons pour chaque segment composant l'itinéraire. Chaque coupon peut identifier un segment spécifique 30 pour lequel le billet peut être utilisé pour obtenir une carte d'embarquement. Le statut d'un coupon peut être « ouvert » si le bon est inutilisé, « parcouru » si le coupon a été utilisé, ou échangé » si le coupon a été échangé pour un autre vol. [00103] Chaque billet dans la base de données de billets 20 peut avoir un identifiant unique, ou le numéro de billet, qui peut être stocké dans un élément du billet. Pour récupérer 3061575 23 des données stockées dans le billet, une interrogation de demande d'affichage de billet peut être transmise à la base de données de billets 20. En réponse à la réception de l'interrogation de demande d'affichage, la base de données de billets 20 peut transmettre en retour une donnée issue de l'enregistrement de base de données correspondant à un numéro de billet S présenté dans l'interrogation. [00104] Les billets peuvent inclure des coupons supplémentaires qui peuvent être utilisés pour obtenir des produits autres que des cartes d'embarquement. La base de données de billets 20 peut également stocker d'autres types de documents électroniques, tels que les documents électroniques divers (EMD), qui représentent un paiement pour les services 10 payants ayant été achetés par le voyageur. Ces services payants peuvent être représentés dans le dossier de réservation à l'aide des Demandes de service spécial (SSR, ou Special Service Requests). Les services qui sont payants peuvent être associés à un EMD et/ou à un numéro de coupon dans le dossier de réservation. [00105] Faisant référence maintenant à la FIG. 2, le système de gestion de base de 15 données 12, le système utilisateur 14 le système pourvoyeur 14, la base de données de réservation 18, et la base de données de billets 20 de l'environnement d'exploitation 10 peuvent être mis en application dans un ou plusieurs dispositifs ou systèmes informatiques, tels que l'ordinateur exemplaire 30. L'ordinateur 30 peut inclure un processeur 32, une mémoire 34, un dispositif de stockage de mémoire de masse 36, une interface entrée/sortie 20 (I/O) 38, et une interface homme-machine (HMI) 40. L'ordinateur 30 peut aussi être couplé de façon fonctionnelle à une ou plusieurs ressources externes 42 via le réseau 22 ou l'interface 1/0 38. Les ressources externes peuvent inclure, de façon non exhaustive, des serveurs, des bases de données, des dispositifs de stockage de masse, des dispositifs périphériques, des services de réseau en nuage (cloud), ou toute autre ressource informatique appropriée qui p 25 être utilisée avec l'ordinateur 30. [00106] Le processeur 32 peut inclure un ou plusieurs dispositifs sélectionnés : microprocesseurs, microcontrôleurs, processeurs de signal numérique, micro-ordinateurs, unités centrales de traitement, des réseaux de portes programmables (gale arrays), des dispositifs logiques programmables, des machines à état défini, des circuits logiques, des 30 circuits analogiques, des circuits numériques ou tout autre dispositif servant à manipuler des signaux (analogues ou numériques) sur la base des instructions de fonctionnement enregistrées dans la mémoire 34. La mémoire 34 peut inclure un seul dispositif de mémoire ou une pluralité de dispositifs de mémoire comprenant, de façon non exhaustive, la mémoire à lecture seule (ROM), la mémoire à accès aléatoire (RAM), la mémoire volatile, la mémoire 3061575 24 non volatile, la mémoire vive statique (SRAM), la mémoire dynamique à accès aléatoire (DRAM), la mémoire flash, rantémémoire (cache memory) ou tout autre dispositif capable de stocker des données. Le dispositif de mémoire de masse 36 peut inclure des dispositifs de stockage de données tels qu'un disque dur, un disque optique, un dérouleur de bande 5 magnétique, un circuit à l'état solide volatile ou non-volatile ou tout autre dispositif capable de stocker des données. [00107] Le processeur 32 peut fonctionner sous le contrôle d'un système d'exploitation 44 qui réside dans la mémoire 34. Le système d'exploitation 44 peut gérer les ressources de l'ordinateur de telle façon que le code de programme de l'ordinateur, intégré sous forme d'un 10 ou de plusieurs logiciels d'application, tels que l'application 46 qui réside dans la mémoire 34, puisse disposer d'instructions exécutées par le processeur 32. Le processeur 32 peut exécuter l'application 46 directement et auquel cas, le système d'exploitation 44 peut être omis. Tin ou plusieurs logiciels d'application peuvent inclure un exemple courant d'une application comportant un serveur. qui peut accepter les demandes provenant de, et fournir 15 des réponses à, une ou plusieurs applications client correspondantes. Une ou plusieurs structures de données 48 peuvent aussi résider dans la mémoire 34, et peuvent être utilisées par le processeur 32, le système d'exploitation 44 ou l'application 46 pour stocker ou manipuler des données. [00108] L'interface 1/0 38 peut fournir une interface machine qui couple de façon 20 fonctionnelle le processeur 32 à d'autres dispositifs et systèmes, tels que le réseau 22 ou la ressource externe 42. L'application 46 peut ainsi collaborer avec le réseau 22 et/ou les ressources externes 42 en communiquant par l'intermédiaire de l'interface I/O 38 pour fournir les divers éléments, fonctions, applications, processus et/ou modules composant les modes de réalisation de l'invention. Le serveur d'application 46 peut aussi avoir un code de programme 25 qui est exécuté par la ou plusieurs ressources externes 42 et/ou autrement repose sur les fonctions et/ou les signaux fournis par un autre système ou d'autres composants de réseau externes au système informatique 30. En effet, au vu des configurations presque infinies de matériel informatique et de logiciel possibles, il faut comprendre que les modes de réalisation de l'invention peuvent inclure des applications localisées à l'extérieur du système 30 informatique 30, distribuées à des ordinateurs multiples et/ou à d'autres ressources externes 42, et/ou fournies par des ressources informatiques (matériel et logiciel) fournies comme services sur le réseau 22, par exemple un service d'informatique en nuage (douci computing). 3061575 25 [00109] Le HMI 40 peut être couplé de façon fonctionnelle au processeur 32 du système informatique 30 pour permettre â un utilisateur d'interagir directement avec l'ordinateur 30. Le HMI 40 peut inclure un affichage vidéo et/ou un affichage alphanumérique, un écran tactile, un haut-parleur et tout autre indicateur visuel et audio capable de fournir des données à 5 l'utilisateur. Le HMI 40 peut aussi inclure des dispositifs de saisie et des contrôles tels qu'un clavier alphanumérique, un appareil de pointage, des claviers, des boutons poussoir, des boutons de commande, des microphones, etc., capables d'accepter des commandes et/ou des saisies de l'utilisateur, et de transmettre les saisies entrées au processeur 32. [00110] Une base de données 50 peut résider sur le dispositif de stockage de mémoire de 10 masse 36 et peut être utilisée pour collecter et organiser les données utilisées par les divers systèmes et modules décrits dans les présentes. La base de données 50 peut inclure des données et les structures de données qui les supportent pour stocker et organiser les données. En particulier, la base de données 50 peut être arrangée selon toute organisation ou structure de base de données incluant, de façon non exhaustive, une base de données relationnelle, une 15 base de données de type hiérarchique, une base de données en réseau, une base de données orientée objet ou des combinaisons de celles-là. [00111] Un système de gestion de base de données sous la forme d'une application logicielle informatique dans la mesure où les instructions sur le processeur 32 peuvent être utilisées pour accéder à la donnée stockée dans les enregistrements de la base de données 50 20 en réponse à une interrogation, et l'interrogation peut être automatiquement déterminée et exécutée par le système d'exploitation 44, d'autres applications 46 et/ou un ou plusieurs modules. Bien que des modes de réalisation de l'invention peuvent être décrits dans les présentes en utilisant une terminologie relationnelle, hiérarchique, de réseau, orientée objet ou une autre terminologie de base de données dans des exemples spécifiques, il faut comprendre 25 que les modes de réalisation de l'invention peuvent utiliser tout modèle de gestion de bases de données approprié et ne sont pas limités à un type de bases de données en particulier. [00112] La FIG. 3 représente une image 60 d'un dossier de réservation exemplaire pour un vol de Nice en France à l'aéroport John F. Kennedy à New York qui passe par l'aéroport Charles de Gaulle à Paris. Le dossier de réservation inclut un champ d'identificateur 62 qui 30 stocke un enregistrement d'identificateur, un champ de nom de passager 64, et un numéro de champs de segments 65, 66. L'enregistrement d'identificateur peut être une chaîne alphanumérique (par ex., 89DRGH) qui identifie uniquement le dossier de réservation dans la base de données de réservations 18. Le champ de nom de passager peut stocker le nom du passager (par ex.. « John Smith »). Si plus d'un passager voyage sur un itinéraire défini par le 3061575 26 dossier de réservation, plus d'un passager peut être listé dans le dossier de réservation. Chaque champ de segment 65, 66 peut inclure un identificateur de vois (par ex., AF7711) et un code de classe (par ex., « Y » indiquant la classe économique). L'identificateur de vols peut inclure un identificateur de transporteurs (par ex., AF = Air France) et un numéro de vol 5 (par cx., 7711). Chaque champ de segment peut également inclure une donnée qui définit une date de voyage (par ex., 19MAR), un point d'origine et un point de destination (par ex., NCECDG), et une heure de départ et d'arrivée planifiées pour le segment (par ex., départ à 7:10, arrivée à 8:45). [001131 Line fois que les produits de voyage comprenant l'itinéraire ont été réservés, le 10 voyageur peut s'engager sur l'itinéraire en achetant un ou plusieurs billets pour les produits de voyage. Acheter un billet peut impliquer la tarification, la réservation et la billetterie. En réponse à la réception d'une demande du système utilisateur 14, le système de gestion de bases de données 12 peut fixer le prix du billet à l'aide du moteur de tarification. Le moteur de tarification peut déterminer un tarif total pour le billet en calculant un tarif pour un ou 15 plusieurs segments de l'itinéraire défini par le dossier de réservation et ajouter ces tarifs pour générer le tarif total. Le billet en résultant peut inclure un ou plusieurs coupons, chaque coupon correspondant à l'un des segments ou services inclus dans le voyage. [00114] L'itinéraire du billet peut définir les segments pour lesquels le billet peut être utilisé pour obtenir une carte d'embarquement et d'autres services compris dans le voyage. 20 Chaque segment de l'itinéraire peut inclure un ou plusieurs tronçons séquentiels, chacun connectant une escale de départ planifiée à une escale d'arrivée planifiée. [001151 Une fois que la disponibilité a été confirmée et l'itinéraire tarifé, on peut demander au voyageur d'approuver la transaction. En réponse à l'approbation de la transaction par le voyageur, le système de gestion de bases de données 12 ou un autre système de réservation 25 peut engager le dossier de réservation, transmettre une demande à PETS 24 pour générer les billets pour les produits de voyage, et amener le compte du voyageur à être facturé du prix des services. [00116] La FIG. 4 représente une image 70 d'un enregistrement de bases de données de billets exemplaire, ou « billet » qui peut être créé en réponse à la réservation du dossier de 30 réservation 89DRGH dans l'image 60. Le billet peut inclure un champ de numéro de billet 72 qui contient la donnée qui identifie le billet (par ex., TKT-00I) de manière unique, un champ de localisateur d'enregistrement 74 qui contient une donnée identifiant le dossier de réservation à partir duquel le billet a été généré, un champ de nom de passager 76, un numéro de champs de coupon 78, 79, et un numéro de champs de composant tarifaire 82, 83. Sur un 3061575 27 billet exemplaire TKT-001, le coupon C 1 peut correspondre au segment Si du dossier de réservation 89DRGH, et le coupon C2 peut correspondre au segment S2 du dossier de réservation 89DRGH. [00117] Chaque coupon peut inclure une donnée définissant le numéro du vol, le code de la 5 classe de réservation, l'heure et la date de départ, le code du lieu d'origine, le code de destination et un statut de vol. Sur le billet exemplaire TKT-001, le statut du vol est indiqué par « O », ou « ouvert ». indiquant que les coupons n'ont pas été utilisés. D'autres statuts de segment peuvent inclure « P » ou « parcouru », et « E » ou « échangé ». Le billet peut également inclure un ou plusieurs champs de composant tarifaire 82, 83. Sur le billet TKT- 10 001, les champs de composant tarifaire 82, 83 sont indiqués sous les champs coupon 78, 79, et correspondent aux tarifs FC1 et FC2 calculés pour les segments Si et S2 du dossier de réservation 89DRGH. [00118] Dans certains cas, un voyageur peut être soumis un changement involontaire de son itinéraire dû à l'apparition d'une interruption. Une interruption peut survenir si, par 15 exemple, un vol est annulé en raison de la météo ou d'un problème mécanique, un segment de liaison est raté en raison de l'arrivée tardive d'un segment plus ancien, un programme est modifié ou un problème de dernière minute survient à l'aéroport. Les changements involontaires de l'itinéraire peuvent être traités par un échange du billet dans son intégralité, ou par un échange partiel. En cas d'échange partiel, il peut y avoir deux billets coexistant en 20 direct dans la base de données de billets, chacun pourvoyant une partie de l'itinéraire total du voyageur. Dans les deux cas, un nouvel itinéraire peut être défini dans le dossier de réservation qui remplace les segments interrompus. Un billet de rémission peut ensuite être généré sur la base du dossier de réservation mis à jour. [00119] Par voie d'exemple, l'utilisation du dossier de réservation 89DRGH représenté à l'image 60 et du billet TKT-001 représenté à l'image 70, en réponse au segment de Nice à Paris interrompu, un agent du transporteur ou une application automatisée de réaccornmodation peut altérer l'itinéraire défini par le dossier de réservation 89DRGH Par exemple, le dossier de réservation 89DRGH peut être modifié en substituant un vol qui connecte le segment de Nice à Paris en passant par Berlin dans le dossier de réservation. 30 [00120] La FIG. 5 représente une image 61 d'un dossier de réservation 89DRGH, tel qu'il peut apparaître après avoir été modifié comme décrit ci-dessus. L'image 61 montre que le segment précédent Si défini dans le champ de segment 65 du dossier de réservation 89DRGH a été remplacé par deux champs de segment de remplacement 67, 68 qui définissent de nouveaux segments SI et S2 reliant Nice à Charles de Gaulle via Berlin. Le précédent 3061575 28 segment S2 reste une partie de l'itinéraire, et est à présent désigné comme étant le segment S3 dans le champ de segment 69. Un billet de rémission peut être émis pour l'itinéraire révisé qui remplace le billet échangé, ou un billet de rémission peut être émis qui remplace uniquement le segment interrompu. Dans les deux cas. parce que le changement était involontaire, le tarif 5 peut demeurer inchangé par rapport au vol initialement réservé. Dans les systèmes de réservation conventionnels, cela peut nécessiter qu'un agent fixe le tarif des segments de remplacement manuellement, [00121] La FIG. 6 présente un scénario dans lequel une réémission TKT-002 est émise lors d'un échange de billet TKT-001 dans son intégralité. Dans ce scénario, le billet échangé ou 10 « parent » TKT-001 peut apparaître comme indiqué sur l'image de billet 71, et un billet de réémission TKT-002 peut apparaître comme indiqué sur l'image de billet 90. Le billet de réémission peut inclure un champ de numéro de billet 92 qui contient un nouveau numéro de billet, un champ de localisateur d'enregistrement 94 qui contient une donnée identifiant le dossier de réservation 89DRGH à partir duquel le billet TKT-002 a été généré, un champ de 15 nom de passager 96, un numéro de champs de coupon 98-100, et un numéro de champs de composant tarifaire 102-104. [00122] Le tarif total des coupons de remplacement Cl, C2 identifiés dans les champs de coupon 98, 99 du billet de réémission TKT-002 peut être fixé au même montant (par ex., 80 USD) que le coupon qui a été remplacé (Cl de TKT-001) pour maintenir le prix total au 20 prix du billet original. Parce que le billet TKT-001 a été entièrement remplacé, le statut des coupons Cl et C2 sur le billet TKT-001 peut être « E » pour « échangé », puisqu'ils ont été remplacés par les coupons Cl, C2 et C3 sur le billet TKT-002. [00123] La FIG. 7 représente un échange partiel dans lequel le billet TKT-002 est émis uniquement pour les nouveaux segments. Dans ce cas, les billets TKT-001 et TKT-002 25 peuvent coexister comme des billets en direct dans la base de données de billets 20. Comme représenté par l'image 73 du billet TKT-001 et l'image 91 du TKT-002, dans cet autre scénario, le statut du coupon C2 reste ouvert sur le billet TKT-001. et TKT-002 inclut uniquement les champs de coupon 98 et 99 et les champs de composant tarifaire 102 et 103. [00124] Parce que les changements d'itinéraire découlant d'une interruption ne sont 30 typiquement pas facturés au voyageur, les billets de réémission associée à l'interruption peuvent être générés sans calculer les tarifs de remplacement. Cela peut arriver, par exemple, lorsque les billets de réémission sont émis sans frais par la compagnie aérienne en réponse à une interruption de vol due aux conditions météorologiques, aux problèmes d'équipement, à la disponibilité de l'équipage, à la surréservation, aux vols de correspondance retardés, etc. 3061575 29 Les billets de réémission calculés sans les tarifs de remplacement peuvent permettre à des agents d'émettre rapidement de nouveaux billets aux passagers dont le voyage a été interrompu. Cependant, ces billets peuvent être des billets non-standard qui manquent de données tarifaires inhérentes. 5 [00125] Le manque de données tarifaires inhérentes peut créer des problèmes lorsque des transactions supplémentaires impliquant la réémission du billet sont demandées après l'échange involontaire. Par exemple, les calculs pour déterminer les points du programme de fidélité (par ex., l'accumulation du kilométrage du grand voyageur), le dédommagement pour les vols annulés, et/ou les remboursements ou une valeur d'échange du billet de réémission 10 peu(ven)t se baser sur les segments qui ont été payés plutôt que sur les segments qui ont été actuellement parcourus ou qui ont fait l'objet d'un billet en raison d'un échange involontaire. Ces types de calcul peuvent nécessiter à la fois les informations tarifaires globales (par ex., le prix total du billet) ainsi que les informations sur le prix structurel du billet original à un niveau du composant tarifaire et/ou du coupon. 15 [00126] Comme exemple spécifique, si le billet de réémission émis en tant que partie d'un échange involontaire est par la suite échangé volontairement par le voyageur, le voyageur ne devrait normalement pas se voir appliquer des frais supplémentaires pour les vols qui ont été changés involontairement. Si le voyageur demande par la suite un remboursement partiel du billet de réémission, déterminer la valeur résiduelle du billet de réémission peut nécessiter des 20 segments liés sur les billets originaux et de réémission. Le billet de réémission peut ensuite être utilisé pour déterminer le statut de chaque coupon (par ex., ouvert, parcouru ou échangé), et le billet original peut être utilisé pour définir la valeur monétaire de chaque segment (par ex., le montant payé et/ou le montant du tarif). [00127] I,es scénarios qui peuvent encore compliquer la détermination des informations 25 structurelles sur le prix peuvent inclure un échange partiel d'un billet, pouvant entraîner la division de tout l'itinéraire en de multiples billets. Dans certains cas, un ou plusieurs billets échangés peuvent avoir été éliminés du système en raison de l'âge du billet. Parce que la durée de vie des billets peut différer, certains billets échangés liés à un billet de réémission peuvent être disponibles tandis que d'autres peuvent manquer. Pour ces raisons au moins, le 30 fait de tenter de déterminer les informations structurelles de prix en identifiant et en récupérant chaque billet échangé, et en reconstruisant l'historique des échanges peut produire des résultats erronés. [00128] Le dédommagement des billets remboursés ou échangés peut être déterminé sur la base de la valeur des vols retardés. Parce que les coupons de segments de remplacement émis 3061575 30 à la suite d'un échange involontaire ne sont pas achetés, la valeur de ces coupons ne peut pas nécessairement être déterminée sur la base soit d'un montant payé pour le segment échangé soit du tarif normal pour le segment de remplacement. C'est-à-dire que ces segments peuvent avoir une valeur qui est indépendante des tarifs normaux des segments échangés ou de 5 remplacement. Dans certains cas, le dédommagement peut être lié au coupon original du billet acheté à l'origine. Cependant, il peut être difficile ou impossible de déterminer l'échange d'un segment particulier a été volontaire ou involontaire uniquement sur la base des enregistrements de billets. Pour les cas où le billet a été entièrement échangé. il peut être également difficile de déterminer si l'échange a eu lieu ou non. 10 [00129] Les enregistrements de billets et les dossiers de réservation peuvent être requis pour respecter certain formats standard de sorte que la compatibilité soit maintenue entre divers transporteur, agence de voyages et systèmes GDS. Par conséquent, il est impossible d'ajouter simplement de nouveaux types de données à, ou autrement de modifier, les enregistrements de billets et les dossiers de réservation dans le but de régler des problèmes 15 causés par des échanges involontaires. Pour régler ces problèmes, des modes de réalisation de l'invention peuvent utiliser un enregistrement de transition pour suivre le composant tarifaire ancien et la donnée de coupon. Les enregistrements de transition peuvent comprendre un nouveau type d'enregistrement de bases de données qui est utilisé par le serveur d'échange 26 pour pourvoir diverses caractéristiques des modes de réalisation de la présente invention. Le 20 serveur d'échange 26 peut analyser les enregistrements de billets et les dossiers de réservation de billets pour déterminer quels vols ont été interrompus, lier les segments de l'ancien itinéraire aux segments correspondants dans le nouvel itinéraire, et stocker les données définissant ces segments interrompus et les liens dans l'enregistrement de transition. [00130] L'enregistrement de transition peut inclure une donnée de structure tarifaire qui 25 aurait été incluse dans les billets involontaires s'ils avaient été émis comme faisant partie d'un échange volontaire. Le serveur d'échange 26 peut également créer un billet hybride incluant tous les coupons de l'itinéraire actuel sur la base de la donnée dans l'enregistrement de transition. Les informations tarifaires provenant du billet acheté à l'origine et les liens vers les coupons du billet hybride peuvent être stockés dans l'enregistrement de transition et peuvent 30 faciliter la détermination des informations structurelles de prix des billets échangés involontairement. [00131] Le billet hybride peut permettre à des billets involontaires de s'afficher comme si leur prix avait été fixé et s'ils avaient été achetés plutôt qu'émis comme faisant partie d'un échange. Cela peut permettre des processus de suivi pour travailler en transparence sur les 3061575 billets échangés involontairement en faisant correspondre les billets émis précédemment avec les billets de réémission con-espondants. À partir d'un billet donné involontairement, des modes de réalisation de l'invention peuvent amener le système utilisateur 14 à afficher l'itinéraire actuel complet, y compris les segments parcourus et ouverts. Cela peut permettre 5 de faire des liens entre les billets dans la chaine des échanges, ce qui peut faciliter les échanges ou les remboursements ultérieurs d'un billet échangé involontairement. Pour tout coupon donné du billet de réémission, le serveur d'échange 26 peut trouver les éléments de tarification du coupon, par ex., le(s) composant(s) tarifaire(s) original/aux dont provient le coupon. Cela peut permettre au serveur d'échange 26 d'attribuer une valeur au coupon. Les 10 règles de dédommagement peuvent être appliquées à ces composants tarifaires et le cumul du kilométrage peut être déterminé sur la base du prix original. [00132] La FIG. 8 représente un diagramme d'un processus d'échange de billet 110 qui peut être mis en oeuvre par le serveur d'échange 26 pour gérer les échanges involontaires. Dans le bloc 112, le processus 110 peut recevoir une demande pour un échange involontaire. 15 Cette demande peut inclure le numéro de billet du billet en cours d'échange et/ou le localisateur d'enregistrement d'un dossier de réservation associé au billet. En réponse à la réception de la demande, le processus 110 peut passer au bloc 114 et récupérer le billet en cours d'échange dans la base de données de billets 20. La récupération du billet peut inclure la transmission d'une demande à la base de données de billets 20 demandant une image du 20 billet. Cette image peut inclure la donnée définissant les coupons comprenant le billet et les composants tarifaires utilisés pour fixer le prix du billet, et peut être incluse dans plus dans une réponse transmise au serveur d'échange 26 par la base de données de billets 20. Pour le billet exemplaire, original tarifé et acheté TKT-00 1 la base de données de billets 20 peut retourner l'image 70 de la FIG. 4 au serveur d'échange 26. 25 [00133] En réponse à la réception de la réponse de la base de données de billets 20, le processus 110 peut passer au bloc 116 et vérifier le statut de chaque coupon du billet pour déterminer si le billet est échangeable. Par exemple, un billet pour lequel tous les coupons ont été parcourus ne peut pas être échangé. Comme on peut le voir sur les champs de coupon 78, 79 sur l'image 70, les coupons Cl et C2 de TKT-001 sont ouverts. Par conséquent, le 30 billet TKT-001 peut être échangé. [00134] Une fois que le statut de chaque coupon du billet en cours d'échange a été déterminé, le processus 110 peut passer au bloc 117 et récupérer le dossier de réservation identifié par la donnée dans le champ du localisateur d'enregistrement du billet. Dans le présent exemple, le champ du localisateur d'enregistrement 74 du billet TKT-001 identifie le 3061575 32 dossier de réservation 89DRGH, qui peut apparaître comme représenté par l'image 61 de la FIG. 5. Le dossier de réservation peut définir un itinéraire de remplacement qui inclut un ou plusieurs segments de remplacement (par ex., les segments S1 et S2) qui remplace(nt) un ou plusieurs segments interrompus de l'itinéraire précédent. [00135] En réponse à la réception de l'image du dossier de réservation, le processus 110 peut passer au bloc 118 et créer un billet de réémission (par ex., billet TKT-002) dans la base de données de billets 20. Le processus 110 peut également modifier le billet original (par ex., le billet TKT-001) pour refléter les changements de statut de ce billet. Dans le présent scénario exemplaire, le segment original SI reliant Nice à Paris a été remplacé dans le dossier 10 de réservation 89DRGH par deux segments Si et S2 comprenant un vol avec une correspondance à Berlin. En cas d'échange complet, le billet TKT-002 tel que représenté par l'image 90 de la FIG. 6 peut être créé dans la base de données de billets 20. Parce que le billet TKT-002 représenté sur l'image 90 est un remplacement du billet TKT-001 dans son intégralité comme représenté à l'image 70, TKT-001 peut être modifié en changeant le statut 15 des coupons par « échangé », comme indiqué sur F image 71. [00136] Une fois que les billets impliqués dans l'échange ont été créés et/ou modifiés, le processus 110 peut passer au bloc 119. Dans le bloc 119, le processus 110 peut déterminer quels coupons du billet parent et du billet de réémission sont associés à l'interruption. Une fois que les coupons interrompus ont été identifiés, le processus 110 peut passer au bloc 120 20 et créer un enregistrement de transition qui stocke les données liées à l'échange de billets. Comme décrit ci-dessus, l'enregistrement de transition peut améliorer la vitesse et l'efficacité des futures opérations de récupération de données impliquant un échange du billet de réémission. [00137] Le processus de détermination des coupons correspondant à l'interruption et de 25 création de l'enregistrement de transition liant ces coupons peut commencer en identifiant un ou plusieurs coupons dans le billet parent qui étaient impliqués dans l'échange. Un coupon dans le billet parent peut être considéré comme correspondant à un coupon dans le billet de réémission, si les coupons comparés possèdent les mêmes informations de vol. Les informations de vol peuvent inclure les identités des transporteurs émetteurs et de fait, le 30 numéro de vol, les lieux de départ et d'arrivée, la classe de réservation et/ou de cabine, et/ou les dates de vol pour le départ et l'arrivée, par exemple. [00138] La FIG. 9 représente un indice d'échanges exemplaire 122 qui inclut plusieurs tableaux ou « ensembles> 124-128. Ces ensembles peuvent être utilisés par le serveur d'échange 26 pour identifier les coupons interrompus dans les billets parents et de réémission, 3061575 33 et lier les coupons dans le billet parent au coupon de remplacement correspondant dans le billet de réémission. Les ensembles 124-128 peuvent inclure un ensemble A d'un ou de plusieurs coupons parents ag qui sont ouverts (et donc échangeables) dans le billet parent. Pour un ensemble A ayant n? coupons, l'ensemble peut être défini con-une suit : A =ag g E [0, (Eqn.1) En cas d'échange partiel, les coupons dans l'ensemble A peuvent être filtrés de telle sorte que seuls les coupons qui pourraient être impliqués dans l'échange de billets sont analysés. Par exemple, tout coupon dont le statut est « parcouru » peut être exclu de l'analyse. Si plusieurs coupons dans le billet parent ont été parcourus en dehors de la séquence (c.-à-d. qu'il existe 10 un coupon ouvert avec une date de départ plus ancienne qu'un coupon parcouru), tout coupon ouvert ayant des dates de départ antérieures à la date de départ d'un coupon parcouru peut également être filtré en dehors de l'ensemble A. [00139] Le serveur d'échange 26 peut également déterminer un ensemble B d'un ou de plusieurs coupons de remplacement bh sur le billet de réémission. L'ensemble B peut inclure n coupons qui pourvoient collectivement une solution remplaçant les coupons des segments interrompus dans l'ensemble A. L'ensemble B de coupons bh peut être défini comme suit : = (bh}, 3 E [0, (Eqn. 2) [00140] Pour documenter les associations avec les interruptions et les liens entre les coupons dans chaque ensemble, le serveur d'échange peut remplir l'ensemble A' avec m 20 opérateurs booléens a'g, l'ensemble B' avec n opérateurs booléens b`h, et l'ensemble D avec 1 liens. Par exemple, l'ensemble A' peut être présenté par l'équation 3, A'= fa g}, g E Eqn. 3) où chaque opérateur a'g a une valeur vraie (par ex., « 1 ») si le coupon ag correspond à un segment interrompu, et à une valeur ausse ar ex., « 0 ») si le coupon ag ne correspond à 25 aucun segment interrompu. De même, l'ensemble B' peut être présenté par l'équation 4, = (6' h}, 0 E [0, n] (Eqn. 4) où chaque opérateur a une valeur vraie si le coupon bh correspond à l'interruption que le coupon remplace un coupon interrompu ag), et une valeur busse si le coupon correspondant bh ne correspond pas à l'interruption .-à-d. que le coupon bh ne remplace pas 30 un coupon interrompu ag). Dans un mode de réalisation, la valeur de chaque opérateur a`g et b'h peut débuter par, ou autrement être initialement réglée sur fausse. L'ensemble D peut comprendre un tableau de liens qui pourvoient un indice liant chaque coupon ag à un ou plusieurs coupons bh qui remplace(nt le coupon ag. 3061575 34 [00141] L'ensemble D peut comprendre un ensemble Ide liens dk, chaque lien dk comprenant une structure de donnée qui définit une relation entre un coupon parent ag et un coupon de remplacement correspondant bh. Chaque lien dk peut être représenté comme suit : dk = (agt bh) (Eqn. Chaque coupon parent ag peut être lié à au moins un coupon de remplacement bh. De même, chaque coupon de remplacement bh peut être lié à au moins un coupon parent ag. Par exemple, un segment interrompu pour être remplacé par plusieurs segments (par ex., si un vol direct est remplacé par un vol de correspondance), et vice-versa. Cela peut donner lieu à nz qui n'est pas égal à n. Par conséquent, le nombre 1 de liens dk dans l'ensemble D peut être pourvu par : 10 1 = rn.ax(n,rn) Puisque chaque coupon parent/de remplacement est lié à au moins un coupon de remplacement/parent. Il n'y a pas nécessairement une correspondance un à un entre les segments interrompus et les segments de remplacement parce qu'un seul segment interrompu peut être remplacé par deux segments de remplacement, ou deux segments interrompus 15 peuvent être remplacés par un seul segment de remplacement. [00142] Le processus de génération des ensembles .4 '. B' et D peut inclure la comparaison du coupon parent le plus ancien (c.-à-d. le coupon ayant l'heure de départ la plus éloignée) dans l'ensemble A (par ex., le coupon ai) et le coupon de remplacement le plus ancien dans l'ensemble B (par ex., le coupon b1). Si les coupons correspondent (c.-à-d. que le segment 20 pour lequel chaque coupon est remboursable semble être le même segment basé sur la donnée de vol), le serveur d'échange 26 peut comparer le prochain coupon parent le plus ancien dans l'ensemble A au prochain coupon de remplacement plus ancien dans l'ensemble B, en avançant chronologiquement jusqu'à trouver deux coupons qui ne correspondent pas. [00143] En réponse à l'identification d'une paire de coupons qui ne correspondent pas, le 25 processus peut sélectionner le coupon parent le plus récent (c.-à-d. le coupon ayant l'heure de départ la plus récente) dans l'ensemble A (par ex., le coupon an), le coupon de remplacement le plus récent dans l'ensemble B (par ex., le coupon bm), et comparer ces coupons. Si les coupons correspondent, le serveur d'échange 26 peut comparer le prochain coupon le plus récent dans l'ensemble A au prochain coupon le plus récent dans l'ensemble B, en avançant dans l'ordre chronologique inverse jusqu'à trouver deux coupons qui ne correspondent pas. Le serveur d'échange 26 peut ensuite déterminer que tous les coupons entre et incluant la paire de coupons la plus ancienne qui ne correspondent pas et la paire de coupons la plus récente qui ne correspondent pas sont associées à l'interruption. Cela signifie que les coupons 3061575 identifiés correspondent aux coupons interrompus ag dans l'ensemble A, et aux coupons de remplacement correspondants bh dans l'ensemble B. [00144] Les FIGS. 10-13 présentent des organigrammes représentant un processus 130 qui peut être mis en oeuvre parle serveur d'échange 26 pour détecter les coupons interrompus, les 5 faire correspondre à leurs coupons de remplacement correspondant et générer l'indice d'échange. En référence à la FIG. 10, dans le bloc 132, le processus 130 peut initialiser un ou plusieurs compteurs, par ex., en réglant le compteur i = 1 et le compteur j = 0. Les compteurs peuvent être utilisés pour garder une trace des coupons dans les ensembles .4 et B qui sont analysés, ainsi que les endroits des liens di: ajoutés à l'ensemble D par le processus 130. 10 [00145] Une fois que les compteurs sont réglés, le processus 130 peut passer au bloc 134 et comparer le coupon a, de l'ensemble A au coupon br de l'ensemble B. Si les coupons ne correspondent pas (branche «NON » du bloc de décision 136), le processus 130 peut passer au bloc 138, régler les valeurs de a, et bl, sur vraies dans les ensembles A` et B', indiquant par là même que les coupons sont associés à une interruption, et passer au bloc 139 (FIG. 11). Si 15 les coupons correspondent (branche « OUI » du bloc de décision 136), le processus 130 peut passer au bloc 140. [00146] Dans le bloc 140, le processus 130 peut déterminer si â la fois le coupon as,., existe dans l'ensemble A et le coupon b,+1 existe dans l'ensemble B. Si aucun coupon n'existe dans cet ensemble respectif (branche « NON » du bloc de décision 140), le processus 130 peut 20 passer au bloc 142 (FIG. 12). Si les deux coupons existent dans leurs ensembles respectifs (branche « OUI » du bloc de décision 140), le processus 130 peut passer au bloc 144. [00147] Dans le bloc 144, le processus 130 peut régler les valeurs de a't et b't sur fausses dans les ensembles A' et B', respectivement, pour indiquer que les coupons ne sont pas associés à une interruption, et ajouter un lien di = (a,, b,) à l'ensemble D. Le lien d, peut 25 définir une relation entre le coupon a, et le coupon bi. Le processus 130 peut ensuite passer au bloc 146, incrémenter le compteur i, retourner au bloc 134, et poursuivre le processus de comparaison des coupons. [00148] Faisant maintenant référence à la FIG. 11, dans le bloc 139, le processus 130 peut comparer le coupon am:, au coupon bh .j. Si les coupons ne correspondent pas (branche 30 « NON » du bloc de décision 148), le processus 130 peut passer au bloc 150. Dans le bloc 150, le processus 130 peut régler les valeurs de chaque opérateur a't via dans l'ensemble A', chaque opérateur b'i via bith_i dans l'ensemble B' sur vraies. Le processus 130 peut également ajouter des liens d = (ag, bh) à D pour g = i vers m-j et h = i vers n-j. Une fois 3061575 36 que les opérateurs et les liens ont été définis dans leurs ensembles respectifs, le processus 130 peut se terminer. [00149] Si les coupons correspondent (branche « OUI » du bloc de décision 148), le processus 130 peut passer au bloc 152. Dans le bloc 152. le processus 130 peut déterminer si 5 l'opérateur ou l'opérateur b'ej est vrai. Si les deux opérateurs sont vrais (branche « OUI » du bloc de décision 152), le processus 130 peut passer au bloc 154 (FIG. 13). Si aucun opérateur n'est vrai (branche «NON » du bloc de décision 152), le processus 130 peut passer au bloc 156. [00150] Dans le bloc 156, le processus 130 peut régler a'nil et b'," =faux dans les 10 ensembles A' et B', respectivement, et ajouter un lien 41= (amlx b,,l) à l'ensemble D. Le lien ch., peut définir une relation entre le coupon amj et le coupon bn.../. Le processus 130 peut ensuite passer au bloc 158, incrémenter le compteur j, retourner au bloc 139, et continuer le processus de comparaison des coupons. [00151] Faisant maintenant référence à la FIG. 12, dans le bloc 142, le processus 130 peut 5 déterminer si le coupon /,-H existe dans l'ensemble B. Si le coupon existe (branche « OUI » du bloc de décision 142), le processus 130 peut passer au bloc 160 et régler les valeurs de chaque opérateur b' 1+1 via b'n dans l'ensemble B' sur vraies. Le processus 130 peut également ajouter des liens d = (ai, bh) à D pour h = i vers n. Une fois que la valeur des opérateurs b",+1 via b',7 a été fixée et que les liens d ont été ajoutés à l'ensemble D, le processus 130 peut se terminer. 20 Si le coupon b,+1 n'existe pas dans l'ensemble B (branche « NON » du bloc de décision 142). le processus 130 peut passer au bloc 162. [00152] Dans le bloc 162, le processus 130 peut déterminer si le coupon ain existe dans l'ensemble A. Si le coupon existe (branche « OUI » du bloc de décision 162), le processus 130 peut passer au bloc 164. Dans le bloc 164, le processus 130 peut régler les valeurs de chaque 25 opérateur a',+i via atm dans l'ensemble A' sur vraies, et ajouter des liens d = (ag, b,) à D pour g i vers in. Une fois que les valeurs des opérateurs a'i+1 via ont été réglées et que les liens d ont été ajoutés à l'ensemble D, le processus 130 peut se terminer. Si le coupon 0,+1 n'existe pas dans l'ensemble insécable A (branche « NON » du bloc de décision 162), le processus 130 peut passer au bloc 166, générer un message indiquant qu'aucun coupon 30 interrompu n'a été détecté et se terminer. [00153] Faisant maintenant référence à la FIG. 13, dans le bloc 154, le processus 130 peut déterminer si la valeur de l'opérateur b',y est vraie. Si la valeur de l'opérateur est vraie (branche «OUI » du bloc de décision 154), le processus 130 peut passer au bloc 168, régler la valeur de l'opérateur dans l'ensemble B' sur fausse, et régler les valeurs de chaque 3061575 37 opérateur a; via a;n1-1 dans l'ensemble sur vraies. Le processus 130 peut également ajouter des liens dg = (ag, ba-j) à D pour g = i vers mi avant de se terminer. Si la valeur de l'opérateur b;,.); n'est pas vraie (branche « NON » du bloc de décision 154), le processus 130 peut passer au bloc 170. Dans le bloc 170, le processus 130 peut régler la valeur opérateur cern. 5 j dans l'ensemble A sur crusse, et régler les valeurs de chaque opérateur b 'i via b -1 dans l'ensemble B' sur vraies. Le processus 130 peut également ajouter des liens d,, = (a,,,., hh) à D pour h =I vers ni avant de se terminer. [00154] La HG_ 14 représente une application du processus décrit ci-dessus 130 à un ensemble exemplaire 180 de coupons 82-185 (par ex., ensemble A de coupons al-04) à partir 10 d'un billet parent, et un ensemble exemplaire 190 de coupons 192-195 (par ex., ensemble B de coupons bi-b4) à partir d'un billet de réémission. Le serveur d'échange 26 peut commencer analyse en initialisant le compteur i = 1 et le compteur j = 0, et en sélectionnant le coupon te plus ancien dans l'ordre chronologique à partir de chaque ensemble A et ensemble B (par ex., le coupon ai et le coupon b1) sur la base de la valeur du compteur 1. 15 [00155] Le serveur d'échange 26 peut comparer les coupons sélectionnés a] et b1 (comme indiqué par la ligne à double flèche 200) pour déterminer s'ils ont les mêmes informations de vol. En réponse au fait de déterminer que les coupons ont bien les mêmes informations de vol -à-d. que ai = b1), le serveur d'échange 26 peut ensuite déterminer si à la fois le coupon a2 existe dans l'ensemble A, et le coupon bz existe dans l'ensemble B. En réponse au fait de 20 déterminer que ces coupons existent dans chacun des ensembles respectifs, le serveur d'échange 26 peut régler (ou vérifier, le cas échéant) la valeur de l'opérateur di de l'ensemble At et de l'opérateur h'2 de l'ensemble B' surfausse (indiquant ainsi qu'elles ne sont pas associées à un lien interrompu), ajouter un lien d1 (ai, bi) à l'ensemble D, et incrémenter le compteur i à 2. 25 [00156] Le serveur d'échange 26 peut ensuite comparer le coupon 02 de l'ensemble A au coupon bz de l'ensemble (comme indiqué par la ligne à double flèche 202), qui sont les prochains coupons dans l'ordre chronologique dans chaque ensemble, comme indiqué par le compteur i. Parce que les informations de vol du coupon a2 sont différentes des informations de vol du coupon bz, le serveur d'échange 26 peut déterminer que le coupon az ne correspond 30 pas au coupon bz, c.-à-d. que az É b2. [00157] En réponse à la détermination selon laquelle az É b2, le serveur d'échange 26 peut régler la valeur de l'opérateur a', de l'ensemble A' et de l'opérateur b'2 de l'ensemble 13` sur vraie. Le serveur d'échange 26 peut également sélectionner le dernier coupon qui apparaît dans l'ordre chronologique dans chaque ensemble A et ensemble B (par ex., le coupon 04 de 3061575 38 l'ensemble A et le coupon b4 de l'ensemble B) sur la base de la valeur du compteur./ et du nombre de coupons dans chaque ensemble, et comparer les coupons sélectionnés, comme indiqué par la ligne double flèche 204. Parce que les informations de vol pour chacun de ces coupons sont les mêmes, le serveur d'échange 26 peut déterminer que a4 = /m. En réponse à la 5 détermination selon laquelle al= ba, le serveur d'échange 26 peut de plus déterminer si la valeur de l'opérateur a '4 de l'ensemble A' ou de l'opérateur b'4 de l'ensemble B' est vraie. Dans le présent exemple, puisque ni l'opérateur a'4 ni l'opérateur b'4 n'a été réglé sur vrai, le serveur d'échange 26 peut déterminer qu'aucun opérateur n'a la valeur vraie. À la suite de sa détermination, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur 10 fausse, ajouter un lien da = (04, b4) à l'ensemble D, et incrémenter le compteur j à1 I. [00158] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon 03 de l'ensemble A et le coupon b3 de l'ensemble B) sur la base de la valeur du compteur j, comparer les coupons sectionnés, comme indiqué par la ligne à double flèche 206. Parce que 15 les informations de vol sont les mêmes pour chacun de ces coupons, et parce que ni l'opérateur a"3 ni l'opérateur b'3 n'a été réglé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur fausse, ajouter un lien d3 = (03, b3) à l'ensemble D, et incrémenter le compteur j à 2. [00159] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique de chaque ensemble basé sur la valeur du compteur j (p ex., le coupon 02 de l'ensemble A et le coupon b2 de l'ensemble B) et comparer les coupons, comme indiqué par la ligne à double flèche 208. En réponse à la détermination selon laquelle 02 b2, le serveur d'échange 26 peut régler la valeur de l'opérateur a': sur vraie, régler la valeur de l'opérateur b'2 sur vraie, ajouter un lien d2 = (02, b2) à l'ensemble D, et terminer 25 l'analyse. [00160] La FIG. 15 représente une application du processus 130 décrit ci-dessus sur l'ensemble exemplaire 180 des coupons 182-185 et un autre ensemble exemplaire 210 de coupons 212-215 (par ex.. l'ensemble B de coupons bi-b4) d'un billet de réémission dans lequel les coupons bi et b2 ont remplacé les coupons al et az. 30 [00161) Le serveur d'échange 26 peut commencer l'analyse en initialisant les compteurs en sélectionnant les coupons les plus anciens dans l'ordre chronologique dans chaque ensemble A et ensemble B, par ex., le coupon ai et le coupon bi comme indiqué par le compteur i. Le serveur d'échange 26 peut comparer les coupons sélectionnés ai et bf (comme indiqué par la ligne à double flèche 220) pour déterminer s'ils ont les mêmes informations de 3061575 39 vol. En réponse à la détermination selon laquelle les coupons n'ont pas les mêmes informations de vol (c.-à-d. ai b1), le serveur d'échange 26 peut régler les valeurs de l'opérateur ori de l'ensemble A' et de l'opérateur b de l'ensemble Be' sur vraies. [00162] Le serveur d'échange 26 peut ensuite sélectionner le coupon le plus récent qui 5 apparaît dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a4 de l'ensemble A et le coupon b4 de l'ensemble B), et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 222. Parce que les informations de vol de chacun de ces coupons sont les mêmes, le serveur d'échange 26 peut déterminer que a4 = b4. En réponse à la détermination selon laquelle a4 = b4, le serveur d'échange 26 peut par ailleurs 10 déterminer si la valeur de l'opérateur a'4 de l'ensemble A' ou de l'opérateur b'4 de l'ensemble B' est vraie. Parce que ni l'opérateur dl ni l'opérateur b'4 n'a été activé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur fausse, ajouter un lien c14 (a4, b4) à l'ensemble D, et incrémenter le compteur j à I. [00163] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus 15 récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a3 de l'ensemble A et le coupon b3 de l'ensemble B) sur la base de la valeur du compteur j, et comparer les coupons sélectionnés, comme indiqué par la ligne double flèche 224. Parce que les informations de vol de chacun de ces coupons sont les mêmes, et que ni l'opérateur a'3 ni l'opérateur h' 3 n'a été réglé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun 20 des opérateurs sur fausse, ajouter un lien d3 (a3, b3) à l'ensemble D, et incrémenter le compteur j à 2. [00164] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a2 de l'ensemble A et le coupon b2 de l'ensemble B) basées sur la valeur du compteur j, et comparer 25 les coupons sélectionnés, comme indiqué par la ligne double flèche 226. En réponse à la détermination selon laquelle a2 b2, le serveur d'échange 26 peut activer les valeurs des opérateurs a'i, a12, b'1, et b'2 sur vraies, ajouter des liens di = (ai, bi) et d2 = (a2, b2) à l'ensemble D, et terminer l'analyse. [00165] La FIG. 16 représente une application du processus 130 décrit ci-dessus sur 30 l'ensemble exemplaire 180 des coupons 182-185 et sur un ensemble exemplaire 230 des coupons 232-236 (par ex., ensemble B de coupons bi-bs) d'un billet de réémission dans lequel les b2 et bz: remplacent le coupon a2. [00166] Le serveur d'échange 26 peut commencer l'analyse en initialisant les compteurs et en sélectionnant les coupons les plus anciens al et bi dans leurs ensembles A et B. Le serveur 3061575 40 d'échange 26 peut comparer les coupons sélectionnés (comme indiqué par la ligne à double flèche 238), déterminer qu'ils ont les mêmes informations de vol, et qu'à la fois le coupon a2 existe dans l'ensemble A, et le coupon b2 existe dans l'ensemble B. En réponse à ces déterminations, le serveur d'échange 26 peut régler les valeurs de l'opérateur de 5 l'ensemble A r et de l'opérateur b'2 de l'ensemble B' sur ausses, ajouter un lien di = (ai, b à l'ensemble D, et incrémenter le compteur i à 2. [00167] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus ancien dans l'ordre chronologique dans chacun des ensembles A et B (par ex.. le coupon a2 l'ensemble A et le coupon b2 de l'ensemble B) sur la base de la valeur du compteur i, et 1.0 comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 240. Parce que les informations de vol du coupon a2 sont différentes des informations de vol du coupon b2, le serveur d'échange 26 peut déterminer que a2 # b2. En réponse à cette détermination, le serveur d'échange 26 peut régler les valeurs de l'opérateur a'2 de l'ensemble A' et de l'opérateur b'2 de l'ensemble B' sur vraies, sélectionner le coupon le plus 15 récent qui apparaît dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a4 de l'ensemble A et le coupon h5 de l'ensemble B), et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 242. [00168] Parce que les informations de vol des coupons a4 et b5 sont les mêmes, le serveur d'échange 26 peut déterminer que a4 = 1)5. En réponse à la détermination selon laquelle a4 = 20 b5, le serveur d'échange 26 peut par ailleurs déterminer si la valeur de l'opérateur a'.1 de l'ensemble A' ou de l'opérateur b'5, ou de l'ensemble B' est vraie. Parce que ni l'opérateur a'4 ni l'opérateur h' 5 n'a été réglé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur fausse, ajouter un lien c15 = (a4, b5) à l'ensemble D, et incrémenter le compteur j à 1. 25 [00169] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a3 de l'ensemble A et le coupon b4 de l'ensemble B) sur la base de la valeur du compteur j, et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 244. Parce que les informations de vol de chacun de ces coupons sont les mêmes, et parce que ni 30 l'opérateur ce3 ni l'opérateur b`4 n'a été réglé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun des opérateurs sur fausse, ajouter un lien d4 = (a3, b4) à l'ensemble D, et incrémenter le compteur j à 2. [00170] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a2 de 3061575 41 l'ensemble A et le coupon h3 de l'ensemble R) sur la base de la valeur du compteur j, et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 246. En réponse à la détermination selon laquelle a2 b3, le serveur d'échange 26 peut régler les valeurs des opérateurs a' b'2, et b'3 sur vraies, ajouter des liens d - (a2, b2) et d3 (a2, b3) à 5 l'ensemble D, et terminer l'analyse. [00171] La FIG. 17 représente une application du processus 130 décrit ci-dessus à l'ensemble 180 de coupons 182-185 et un ensemble exemplaire 250 de coupons 252-254 (,par ex., ensemble B de coupons bi-b3) d'un billet de réémission dans lequel le vol correspondant aux coupons ai et a2 a été remplacé par un vol direct correspondant au coupon b1. 10 [00172] Le serveur d'échange 26 peut initialiser les compteurs, sélectionner les coupons les plus anciens al et bi dans les ensembles respectifs A et B, et comparer les coupons sélectionnés al et b,, comme indiqué par la ligne à double flèche 256. En réponse à la détermination selon laquelle les coupons n'ont pas les mêmes informations de vol, le serveur d'échange 26 peut régler les valeurs de l'opérateur ce' de l'ensemble A' et de l'opérateur b' 15 de l'ensemble B' sur vraies, sélectionner le coupon le plus récent qui apparaît dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a4 de l'ensemble A et le coupon b3 de l'ensemble B), et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 258. [00173] En réponse la détermination selon laquelle a4 = b3, le serveur d'échange 26 peut 20 déterminer si la valeur de l'opérateur a'4 de l'ensemble A' ou de l'opérateur b'3 de l'ensemble est vraie, Parce que ni l'opérateur a'4 ni l'opérateur b'3 n'a été activé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur fausse, ajouter un lien da = (a4, b3) à l'ensemble D, et incrémenter le compteur/ à 1. [00174] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus 25 récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a de l'ensemble A et le coupon I), de l'ensemble B) sur la base de la valeur du compteur j, et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 260. En réponse à la détermination selon laquelle a3 = b2, le serveur d'échange 26 peut déterminer si la valeur de l'opérateur a'3 de F ensemble A' ou de l'opérateur b'2 de l'ensemble B' est vraie. 30 Parce que ni l'opérateur a'3 ni l'opérateur b'2 n'a été réglé sur vrai, le serveur d'échange 26 peut régler la valeur de chacun de ces opérateurs sur ausse, ajouter un lien d3 = (a3, b2) â l'ensemble D, et incrémenter le compteur/ à 2. [00175] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a2 de 3061575 42 l'ensemble A et le coupon b1 de l'ensemble B) basées ur la valeur du compteur j, et comparer les coupons sélectionnés, comme indiqué par la ligne à double flèche 262. En réponse à la détermination selon laquelle a2 bi, le serveur d'échange 26 peut régler les valeurs des opérateurs (fi, a'2, et b' 1 sur vraies, ajouter un lien d2 (a2, bi) à l'ensemble D, et terminer 5 l'analyse. [00176] La FIG. 18 représente une application du processus 130 décrit ci-dessus sur l'ensemble 180 des coupons 182-185 et un ensemble exemplaire 270 de coupons 272, 274 (par ex., l'ensemble B de coupons bi-b2) dans un billet de réémission dans lequel le vol correspondant aux coupons ai et a2 a été annulé. 10 [00177] Le serveur d'échange 26 peut initialiser les compteurs, sélectionner les coupons al et bt les plus anciens dans leurs ensembles respectifs A et B, et comparer les coupons sélectionnés ai et bi, comme indiqué par la ligne à double flèche 276. En réponse à la détermination selon laquelle les coupons n'ont pas les mêmes informations de vol, le serveur d'échange 26 peut régler les valeurs de l'opérateur a'i de l'ensemble A' et de l'opérateur h'1 15 de l'ensemble B' sur vraies. [00178] Le processus 130 peut ensuite sélectionner le coupon le plus récent qui apparaît dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon al de l'ensemble A et le coupon b2 de l'ensemble B). et comparer les coupons sélectionnés, comme représenté par la ligne à double flèche 278. En réponse à la détermination selon laquelle aa 20 b2, le serveur d'échange 26 peut déterminer si la valeur de l'opérateur a'a de l'ensemble A' ou de l'opérateur b'2 de l'ensemble B' est vraie. Parce que ni l'opérateur a '4 ni l'opérateur b'2 n'a été réglé sur vrai, le serveur d'échange 26 peut activer la valeur de chacun de ces opérateurs sur fausse, ajouter un lien da = (a4, b2) à l'ensemble D, et incrémenter le compteur j à 1. [00179] Le serveur d'échange 26 peut ensuite sélectionner le prochain coupon le plus 25 récent dans l'ordre chronologique dans chacun des ensembles A et B (par ex., le coupon a3 de l'ensemble A et le coupon b1 de l'ensemble B) basé sur la valeur du compteur j, et comparer les coupons sélectionnés, comme représenté par la ligne à double flèche 280. Le serveur d'échange 26 peut déterminer que les informations de vol pour chacun de ces coupons sont les mêmes. Cependant, le serveur d'échange 26 peut par ailleurs déterminer que 30 l'opérateur 1 a été réglé sur vrai, suite à la comparaison précédente avec le coupon ai. En réponse à la détermination selon laquelle l'opérateur b' 1 a été réglé sur vrai, le serveur d'échange 26 peut régler l'opérateur b' ! sur faux, régler la valeur des opérateurs et a'2 sur vraie, ajouter des liens di (ai, 0), d2 = (a2, 0), et d3 = (a3, bi à l'ensemble D, et terminer l'analyse. 3061575 43 [00180] Une fois que les coupons interrompus dans le billet parent et leur coupon de remplacement correspondant dans le billet de réémission ont été identifiés et reliés, le serveur d'échange 26 peut stocker ces informations dans un enregistrement de bases de données pour une utilisation intérieure. Cependant, les enregistrements de billets et les dossiers de réservation peuvent être requis pour respecter certains formats standards, de sorte que la compatibilité soit maintenue entre divers transporteur, agence de voyages et systèmes GDS. Par conséquent, il est impossible d'ajouter de nouveaux types de données ou autrement de modifier les enregistrements de billets et les dossiers de réservation pour stocker les données non standards supplémentaires générées par le serveur d'échange 26. 10 [00181] Afin de fournir un enregistrement pour stocker les informations non standard générées parle serveur d'échange 26, des modes de réalisation de l'invention peuvent utiliser des enregistrements de transition. Les enregistrements de transition peuvent inclure des champs de données qui sont utilisés par le serveur d'échange 26 pour suivre l'ancien composant tarifaire et la donnée de coupons, et ils peuvent comprendre un nouveau type 15 d'enregistrement de bases de données qui est utilisé par le serveur d'échange 26 pour pourvoir diverses caractéristiques des modes de réalisation de la présente invention. Les enregistrements de transition peuvent stocker des informations qui pourvoient un historique des échanges dans son intégralité d'un billet de réémission. Les informations stockées dans un enregistrement de transaction peuvent être associées à un dossier de réservation spécifique et 20 peuvent inclure une copie de chaque coupon de l'itinéraire actuel ainsi que des informations sur les tarifs et sur les coupons provenant de tout coupon des billets tarifés et achetés à l'origine qui sont liés à un coupon de l'itinéraire actuel. [00182] La FIG. 19 représente un enregistrement de transition exemplaire 300 conformément à un mode de réalisation de l'invention qui inclut un indice de structure 25 tarifaire 302 est un indice d'interruption 304. L'enregistrement de transition 300 peut également inclure des signaux (non indiqués) montrant le processus qui a généré l'enregistrement, et si l'enregistrement de transition 300 a été généré sur la base de plusieurs billets originaux. [00183] L'indice de structure tarifaire 302 peut stocker des données décrivant le billet étais 30 à l'origine avant tout échange, notamment des détails sur les composants tarifaires et les coupons du billet original. Ces données peuvent ne pas être modifiées par le processus d'échange, sauf pour l'ajout de signaux d'interruption qui peuvent être mis à jour après chaque échange. L'indice de structure tarifaire 302 peut par là même permettre au système de 3061575 gestion de base de données 12 de procéder à des échanges du billet sans récupérer le billet original dans la base de données de billets 20. [00184] L'indice de structure tarifaire 302 peut inclure des éléments tarifaires 310, 312 et des éléments de produit 314, 316. Chaque élément tarifaire 310, 312 peut stocker une donnée 5 tarifaire pour un coupon du billet original et peut être lié à un élément de produit correspondant 314, 316 pour définir une structure de données 315, 317. Chaque élément de produit peut stocker la donnée identifiant le billet et le coupon correspondant à l'élément tarifaire auquel l'élément de produit est lié. L'indice de structure tarifaire 302 peut également contenir des données tarifaires et fiscales de base du produit acheté à l'origine. 10 [00185] L'indice d'interruption 304 peut pourvoir un mappage d'échange pour chaque coupon basé sur la donnée d'un ou de plusieurs indices d'échange, et peut être mis à jour chaque fois qu'un billet est échangé. En permettant au système de gestion de bases de données 12 de faire correspondre les coupons du billet de réémission avec les coupons correspondants du billet original et avec tout autre billet parent d'intervention, l'indice 15 d'interruption 304 peut permettre le traitement ultérieur de billets de réémission qui serait impossible en utilisant des systèmes n'ayant pas cette caractéristique. [00186] L'indice d'interruption 304 peut inclure un ou plusieurs tableaux 318-320, chacun définissant un ensemble d'éléments de données liés. Chaque tableau 318-320 peut inclure un élément de coupon 322-324 correspondant à un champ de coupon d'un billet parent, et un 20 élément de coupon 326-328 correspondant à un champ de coupon d'un billet de réémission. Les tableaux 318-320 peuvent être disposés à l'intérieur de l'indice d'interruption 304 comme une série de tableaux ordonnés à partir du tableau le plus ancien (par ex., le tableau ayant les éléments de données correspondant aux coupons avec l'heure de départ la plus éloignée) au tableau le plus récent (par ex., le tableau ayant l'élément de données correspondant aux 25 coupons avec l'heure de départ la plus proche). [00187] Les éléments de coupon 322-324 peuvent correspondre aux coupons de l'ensemble A, les éléments de coupon 326-328 peuvent correspondre aux coupons de l'ensemble B, et les liens entre les éléments de coupon peuvent être définis par des liens d de l'ensemble D d'un indice d'interruption correspondant généré en association avec l'échange 30 d'un billet parent (par ex., TKT-001) contre un billet de réémission (par ex., TKT-002). Les éléments de coupon associés à une interruption (par ex., les éléments de coupon 322 et 323) peuvent être marqués comme interrompus. Le statut des éléments de coupon peut être défini en activant la valeur d'un opérateur associé aig et/ou 'h sur vraie (interrompue) ou fausse 3061575 45 (non interrompue) dans l'ensemble A' et/ou l'ensemble B' indice d'échange correspondant. [00188] Par exemple, l'enregistrement de transition 300 peut être décrit conformément à l'échange de billet exemplaire TKT-001 contre le billet TKT-002, comme décrit ci-dessus 5 concernant les FIGS. 3-6. Dans cet exemple, l'élément tarifaire 310 peut stocker la donnée définissant les informations tarifaires du coupon Cl du billet TKT-001. Les informations tarifaires peuvent inclure lé tarif (par ex., 80 USD) et un statut de signal (par ex., « *ANCIEN ») indiquant que le tarifa été défini pour un coupon qui a été échangé. L'élément de produit associé 314 peut stocker la donnée définissant les informations produit du produit 10 échangé, par ex. la donnée identifiant le segment spécifique pour lequel le coupon Cl du billet TKT-001 aurait pu être utilisé pour obtenir une carte d'embarquement. L'élément de produit 314 peut également inclure un signal de statut indiquant que le produit a été interrompu (par ex., *INT). [00189] L'élément de donnée l plus récent 326-328 dans chaque tableau 318-321 peut 15 stocker une donnée qui définit les détails qui font partie de l'itinéraire actuel, et peuvent être utilisés pour définir un billet hybride. Les coupons dans le billet hybride peuvent avoir une correspondance un par un avec le billet de réémission dans la base de données de billets en cas d'un échange complet ou peuvent contenir des coupons dans chacun des billets multiples dans la base de données de billets 20 en cas d'un échange partiel, 20 [00190] Dans l'exemple actuel, l'élément de coupon 326 peut inclure des données identifiant le coupon Cl du billet TKT-002, qui a peut7être été émis en échange du coupon Cl du billet TKT-001. Par conséquent, l'élément de coupon 326 peut être lié à l'élément de coupon 322, qui peut inclure la donnée identifiant le coupon Cl du billet TKT-001, et qui peut être marqué comme correspondant à l'interruption. 25 [00191] L'élément de coupon 327 peut inclure une donnée identifiant le coupon exemplaire C2 du billet TKT-002, qui a également été émis en échange du coupon Cl du billet TKT-001. En conséquence, l'élément de coupon 327 peut être lié à l'élément de coupon 323, qui peut également inclure la donnée identifiant le coupon Cl du billet TKT-001 et être marqué comme correspondant à l'interruption. L'élément de coupon 328 peut inclure 30 la donnée identifiant le coupon exemplaire C3 du billet TKT-002 qui a été émis en échange du coupon C2 du billet TKT-001. En conséquence, l'élément de coupon 328 peut être lié à l'élément de coupon 324, qui peut inclure la donnée identifiant le coupon C2 du billet TKT001. Cependant, parce que le coupon C2 ne correspond pas à l'interruption qui a déclenché l'échange du billet TKT-001 contre le billet TKT-002, l'élément de coupon 324 ne peut pas 3061575 46 contenir un signal indiquant que le coupon C2 du billet TKT-001 est associé à l'interruption. Collectivement, les tableaux 318-320 d'un indice d'interruption 304 peuvent pourvoir un historique des échanges des coupons comprenant l'itinéraire actuel du voyageur. [00192] Suite à l'interruption qui a donné lieu à l'échange du billet TKT-001 contre le 5 billet TKT-002, une autre interruption peut survenir. En réponse à cette interruption survenant plus tard, un agent du transporteur ou une application de réaccommodation automatique peut modifier l'itinéraire en substituant un ou des segment(s) de remplacement à un ou des segment(s) interrompu(s). Par exemple, si le segment Paris/New York réservé par le segment S3 du dossier de réservation 89DRGH comme indiqué à l'image 61 (FIG. 5) est 10 annulé (par ex., en raison d'une défaillance mécanique ou de membres d'équipage manquants), le segment S3 peut être remplacé par un autre vol. [00193] La FIG. 20 représente une image 63 d'un dossier de réservation mis à jour 89DRGH, une image 93 d'un billet mis à jour TKT-002, et une image 340 d'un billet de réémission TKT-003, qui ont peut-être été émis en échange d'un billet TKT-002. Comme 15 indiqué par l'image 63, le champ de segments 330 et le champ de segments 332 du dossier de réservation 89DRGH définissent les segments S3 et S4, qui ont remplacé le segment interrompu S3 en un champ de segment 69 du dossier de réservation 89DRGH comme indiqué par l'image 61. [00194] L'image de billet 340 peut inclure un champ de numéro de billet 342 qui contient 20 la donnée identifiant le billet (par ex., TKT-003), un champ de localisateur d'enregistrement 344, un champ de nom de passager 346, plusieurs champs de coupon 348351, et plusieurs champs de composants tarifaires 356-359. Chacun des coupons Cl -C4 peut correspondre à un segment respectif SI-S4 défini dans le dossier de réservation mis à jour 89DRGH comme représenté à l'image 63. Parce que le changement est involontaire, le 25 tarif total peut à nouveau demeurer inchangé par rapport au vol réservé initialement. [00195] Suite à l'échange, les enregistrements du billet parent correspondant dans la base de données de billets 20 peuvent être mis à jour pour refléter le statut actuel de chaque coupon. Par exemple, le tarif total des coupons de remplacement C3 et C4 sur le billet TKT003 peut être défini à 80 USD pour maintenir le tarif total au prix du billet à l'origine, et le 30 statut des coupons Cl, C2 et C3 dans le billet parent TKT-002 peut être défini par « E » pour indiquer que les coupons ont été échangés. Le billet original TKT-00I peut demeurer inchangé, auquel cas le billet TKT-001 peut demeurer comme représenté par l'image 71 (FIG. 6). Une fois que le billet de réémission TKT-003 a été émis, le serveur d'échange 26 3061575 47 peut analyser les enregistrements de billets, générer un indice d'échange, et mettre à jour l'enregistrement de transition 300 pour refléter les changements. [00196] La FIG. 21 représente la manière dont l'enregistrement de transition 300 peut apparaître après l'émission du billet TKT-003 conformément à l'exemple ci-dessus. Dans le 5 mode de réalisation exemplaire représenté, l'indice d'intemiption 304 inclut de nouveaux éléments de coupon 360-363 qui contiennent des données identifiant les coupons qui ont été émis pour remplacer les coupons du billet TKT-002. Chaque élément de coupon 360-363 peut être associé à un tableau correspondant 318-321 qui fournit un historique des échanges de l'élément de coupon associé 360-363. Les éléments de coupon 328 et 329 peuvent inclure un 10 signal d'interruption pour indiquer que ces coupons correspondent à l'interruption la plus récente ou à la dernière interruption. [00197] Les éléments tarifaires 310, 312 et les éléments de produit 314, 316 peuvent stocker une donnée supplémentaire non indiquée aux FIGS. 19 et 21, Des types supplémentaires de données qui peuvent être stockées dans les éléments tarifaires 310, 312 15 peuvent inclure des données qui identifient ou définissent un nombre de composants tarifaires, un tarif de base, un nombre de points de fidélité, un lieu d'origine, une destination, un indicateur de voyage, un code tarifaire de base et un désignateur de billet, un code tarifaire familial et un propriétaire, des frais d'installation de passagers, des taxes, et/ou d'autres frais. Les types de données supplémentaires qui peuvent être stockées dans les éléments de 20 produit 314, 316 peuvent inclure un numéro de coupon, un numéro de vol, un code de compagnie aérienne en exploitation, une classe de réservation, des codes d'aéroport pour les aéroports de départ et d'arrivée, les heures de départ et d'arrivée, un numéro de billet original et la présence ou l'absence du signal d'interruption. Les éléments de produit 314, 316 peuvent inclure tous les segments impliqués dans le calcul tarifaire du billet original, notamment les 25 segments qui ont été parcourus. [00198] En réponse à une entrée indiquant qu'un utilisateur souhaite voir un billet, une application client fonctionnant sur le système utilisateur 14 peut transmettre une interrogation d'affichage au système de gestion de bases de données 12. En réponse à la réception de l'interrogation, le système de gestion de bases de données 12 peut interroger la base de 30 données de billets 20 pour obtenir un billet identifié lors de l'interrogation, et/ou la base de données d'enregistrements de transition 28 pour obtenir un enregistrement de transition correspondant au billet. Le système de gestion de bases de données 12 peut utiliser la donnée de l'enregistrement de transition pour enrichir la donnée de l'enregistrement du billet, et transmettre une réponse à l'application client. 3061575 48 [00199] La FIG. 22 représente une image 370 de TKT-001 et une image 400 de TKT-002 qui peuvent être affichées en réponse à la réception d'interrogations d'affichage par le système de gestion de bases de données 12. Par exemple, une interrogation d'affichage du billet TKT-001 transmise avant l'échange contre le billet TKT-002 peut amener le système 5 utilisateur 14 à afficher l'image 370 du billet TKT-001. L'image du billet affiché 370 inclut un champ de numéro de billet 372, un champ de localisateur d'enregistrement 374, un champ de nom de passager 376, des champs de coupon 378, 379, une ligne de calcul tarifaire 382, et des champs de composants tarifaires 384, 386. [00200] Si le système de gestion de bases de données 12 reçoit une interrogation 10 d'affichage des billets émis à partir du dossier de réservation 89DRGH après l'échange causé par l'interruption du vol AF7711 de Nice à Paris, le système de gestion de bases de données 12 peut amener le système utilisateur 14 à afficher l'image du billet 400. Les portions soulignées de l'image du billet 400 peuvent représenter des informations ajoutées à l'image du billet 400 qui ont été générées sur la base de la donnée provenant de l'enregistrement de 15 transition 300. L'image du billet affichée 400 inclut un champ de numéros de billet 402, un champ de localisateur d'enregistrement 404, un champ de nom de passager 406, des champs de coupon 408-410, une ligne de calcul du tarif 414, et des champs de composants tarifaires 416. 418. L'image du billet 400 peut également inclure les champs de coupon de billet original 420, 422 qui fournissent des informations relatives au billet émis et tarifé à 20 l'origine. Ces champs 420, 422 peuvent pourvoir des composants tarifaires structurés et d'anciennes informations de vol parcouru avec les détails de coupon. [00201] L'image affichée 400 peut inclure des informations ajoutées aux champs de coupon 408 et 409, par ex. « (INT TKT-001 Cl) ». Ces informations peuvent lier le présent au coupon interrompu qu'il remplace. Par exemple, les informations ajoutées aux coupons CI et 25 C2 de TKT-002 peuvent indiquer que les coupons ont été émis pour remplacer le coupon interrompu du billet TKT-001. Les données (par ex., « FOR TKT-001 Cl », « FOR TKT-001 C2 ») peuvent également être ajoutées aux champs de composant tarifaire 416, 418 pour indiquer la source du tarif. [00202] La FIG. 23 représente une image 430 de TKT-003 qui peut être affichée en 30 réponse à la réception d'une interrogation d'affichage par le système de gestion de bases de données 12, suite à l'échange du billet TKT-002 contre TKT-003 causé par l'interruption du vol Paris/New York. Comme avec la FIG. 22, les portions soulignées de l'image 430 peuvent représenter des informations ajoutées à l'image du billet 430 sur la base de la donnée de l'enregistrement de transition 300. L'image du billet affichée 430 peut inclure un champ de 3061575 49 numéro du billet 432, un champ de localisateur d'enregistrement 434, un champ de nom de passager 436, des champs de coupon 438-441, un champ de calcul tarifaire 446, des champs de composants tarifaires 448, 450, et des champs de donnée de coupon du billet original 452, 454. 5 [00203] La donnée ajoutée reliant chaque coupon de TKT-003 aux coupons interrompus des billets TKT-001 et TKT-002 peut pourvoir un historique des échanges du coupon respectif. Par exemple, la donnée de liaison ajoutée au coupon Cl dans le champ de coupon 438 peut informer l'utilisateur que le coupon est valable pour le même segment que le coupon Cl du billet TKT-002. qui à son tour était un coupon de remplacement du coupon 10 interrompu Cl du billet TKT-001. La donnée de liaison ajoutée au coupon C2 dans le champ de coupon 439 peut informer l'utilisateur que le coupon est valable pour le même segment que le coupon C2 du billet TKT-002, qui à son tour était un coupon de remplacement du coupon interrompu CI du billet TKT-001. La donnée de liaison ajoutée aux coupons C3 et C4 dans les champs de coupon 440 et 441 peut informer l'utilisateur que chacun de ces coupons remplace le coupon C3 du billet TKT-002, qui à son tour était un coupon du même segment que le coupon C2 du billet TKT-001. [002043 Les images de billet enrichi peuvent être plus complexes que les images de billet standard pour se conformer aux nonnes IATA, la présence de données non standard peut causer des problèmes avec certaines applications. Par exemple, en associant les composants 20 tarifaires aux coupons originaux, une image de billet enrichi peut causer des problèmes de compatibilité avec des systèmes requis pour attribuer une valeur monétaire à chaque segment. Par exemple, un système de contrôle de départ (DCS) pourrait être requis pour, pourvoir une valeur monétaire à chaque segment sur le billet exemplaire TKT-003 ci-dessus. Cependant, parce que les composants tarifaires du billet TKT-003 sont liés aux coupons originaux Cl et 25 C2 de TKT-001, certains systèmes peuvent être incapables de traiter le billet enrichi. [00205] Pour permettre aux images de billet enrichi d'être utilisées par les systèmes ayant des problèmes de compatibilité, le serveur d'échange 26 peut être configuré pour masquer certaines portions d'une image de billet enrichi en réponse à la détermination selon laquelle un système demandeur est incompatible avec l'image de billet enrichi. Le serveur 30 d'échange 26 peut déterminer quand masquer une image de billet enrichi, par exemple, sur la. base de l'identité du système demandeur, et/ou un champ de donnée dans l'interrogation, par ex., si un signal REVENDICATIONS1. Un système de traitement d'enregistrements de base de données, le système comprenant : un ou plusieurs processeurs ; et une mémoire associée à un ou plusieurs processeurs, la mémoire stockant le code programme qui, lorsqu'il est exécuté par un ou plusieurs processeurs, amène le système à : recevoir une interrogation identifiant un premier enregistrement de base de données stocké dans une première base de données ; récupérer dans la première base de données un deuxième enregistrement de base de données indexé sur le premier enregistrement de base de données contenant un indice d'interruption qui inclut au moins un tableau qui définit un ensemble d'éléments de données associés ; identifier un ensemble d'enregistrements de base de données dans la première base de 15 données qui inclut au moins un des éléments de données lié, l'ensemble des enregistrements de données incluant le premier enregistrement de base de données et un troisième enregistrement de base de données ; et générer un premier tableau à partir de l'ensemble des enregistrements de base de données au moyen de : 20 Finitialisation du premier tableau avec les éléments de données dans le premier enregistrement de base de données. et l'ajout d'au moins un élément de données issu du troisième enregistrement de base de données au premier tableau. 25 2. Le système selon la revendication 1, dans lequel les éléments de données issus du premier enregistrement de base de données consistent en une première série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, le troisième enregistrement de base de données inclut une deuxième série d'éléments de données classés de l'élément de donnée le plus ancien à l'élément de donnée le plus récent, et le code 30 de programme amène le système à générer le premier tableau au moyen de : la sélection du dernier élément de donnée auparavant non sélectionné dans le troisième enregistrement de base de données ; la détermination du statut de l'élément de donnée sélectionne ; 3061575 65 en réponse au statut indiquant que l'élément de donnée sélectionné a été échangé, l'activation d'un signal d'échange et la suppression de l'élément de donnée sélectionné; en réponse au statut indiquant que l'élément de donnée sélectionné n'a pas été échangé, l'ajout de l'élément de donnée sélectionné à celui d'un deuxième tableau ou d'un 5 troisième tableau. 3. Le système selon la revendication 2, dans lequel le code de programme amène le système à ajouter l'élément de donnée sélectionné à celui du premier tableau ou du deuxième tableau au moyen de : 10 l'ajout de l'élément de donnée sélectionné au deuxième tableau si le signal d'échange n'est pas activé ;et l'ajout de l'élément de donnée sélectionné au troisième tableau si le signal d'échange est activé. 4. Le système selon la revendication 2 ou 3, dans lequel le code de programme amène le système, en réponse à l'élément de donnée sélectionné étant l'élément de donnée le plus ancien élément de l'enregistrement de la troisième base de données, à mettre à jour le premier tableau au moyen de : l'annexion du deuxième tableau au premier tableau avant l'élément de donnée le plus 20 ancien du premier tableau, et l'annexion du troisième tableau au premier tableau après l'élément de donnée le plus récent du premier tableau. 5. Le système selon l'une quelconque des revendications 2 à 4, dans lequel chaque 25 enregistrement de base de données dans l'ensemble des enregistrements de base de données possède un horodatage indiquant une heure à laquelle l'enregistrement de base de données a été ajouté à la première base de données, l'ensemble des enregistrements de base de données inclut un quatrième enregistrement de base de données, l'horodatage du quatrième enregistrement de base de données se produisant après l'horodatage du troisième 30 enregistrement de base de données, et le code de programme amène par ailleurs le système : en réponse au statut indiquant que l'élément de base de données sélectionné a été échangé, à déterminer si l'élément de données sélectionné apparaît dans un élément de prix du quatrième enregistrement de base de données, et 3061575 66 si l'élément de base de données sélectionné n'apparaît pas dans l'élément de prix du quatrième enregistrement de base de données, à interrompre le traitement des enregistrements de base de données. 5 6. Le système selon l'une quelconque des revendications 2 à 5, dans lequel la première série d'éléments de données consiste en un premier ensemble de coupons comprenant un premier billet, et la deuxième série d'éléments de données consiste en un deuxième ensemble de coupons comprenant un deuxième billet, 10 7. Le système selon l'une quelconque des revendications 1 à 6, dans lequel le code de programme amène le système à; générer un billet hybride à partir du premier tableau ; déterminer une première valeur pour le billet hybride à l'aide d'un moteur de tarification ; et 15 attribuer la première valeur au premier enregistrement de base de données. 8. Le système de la revendication 7 dans lequel le code de programme amène par ailleurs le système à: déterminer une deuxième valeur pour un cinquième enregistrement de base de données pour lequel le premier enregistrement de base de données fait l'objet d'un échange à l'aide du moteur de tarification ; déterminer une troisième valeur égale à la différence entre la deuxième valeur et la première valeur ; et attribuer la troisième valeur au cinquième enregistrement de base de données. 9. Le système selon l'une quelconque des revendications 1 à 4, dans lequel chaque enregistrement de base de données dans l'ensemble des enregistrements de base de données possède un horodatage indiquant une heure à laquelle l'enregistrement de base de données a été ajouté à la première base de données, et le code de programme amène par ailleurs le 30 système â: trier l'ensemble des enregistrements de base de données en fonction de l'horodatage de chaque enregistrement de base de données, de telle façon que l'ensemble des enregistrements de base de données est configuré en tant qu'une série d'enregistrements de 3061575 67 base de données classée issue de l'enregistrement de base de données possédant l'horodatage le plus ancien à l'enregistrement de base de données possédant l'horodatage le plus récent. 10. Un procédé de traitement des enregistrements de base de données, le procédé 5 comprenant : la réception d'une interrogation identifiant un premier enregistrement de base de données stocké dans une première base de données ; la récupération, à partir d'une deuxième base de données, d'un deuxième enregistrement de base de données indexé sur le premier enregistrement de base de données, 10 le deuxième enregistrement de base de données contenant un indice d'interruption qui inclut au moins un tableau qui définit un ensemble d'éléments de données liés ; F identification d'un ensemble d'enregistrement de base de données dans la première base de données qui inclut au moins un des éléments de données associés, l'ensemble des enregistrements de base de données incluant le premier enregistrement de base de données et 15 un troisième enregistrement de base de données ; et la génération d'un premier tableau issu de l'ensemble des enregistrements de base de données au moyen de : l'initialisation du premier tableau avec les éléments de données issus du premier enregistrement de base de données, et 20 l'ajout d'au moins un élément de donnée issu du troisième enregistrement de donnée au premier tableau. 11. Un produit-programme informatique comprenant des instructions de code de programme enregistrées sur un support lisible par 25 ordinateur pour mettre en oeuvre les étapes du procédé conformément à la revendication 10 lorsque ledit programme est exécuté sur un ordinateur.