EP2436163A1 - Method for adapting data in a data transmission system, and associated system - Google Patents
Method for adapting data in a data transmission system, and associated systemInfo
- Publication number
- EP2436163A1 EP2436163A1 EP10723977A EP10723977A EP2436163A1 EP 2436163 A1 EP2436163 A1 EP 2436163A1 EP 10723977 A EP10723977 A EP 10723977A EP 10723977 A EP10723977 A EP 10723977A EP 2436163 A1 EP2436163 A1 EP 2436163A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- syntax
- message
- application
- data
- semantic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2895—Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
Definitions
- the present invention relates to a system and method for data adaptation in the context of a data transmission between a transmitter and a receiver that do not share the same syntactical definition of these data.
- the invention applies in particular in the context of communicating systems consisting of software applications that exchange messages between them.
- a software application connected to a heterogeneous communication network communicates in most cases with another remote application via messages containing data.
- These messages can have the same semantic nature, that is to say convey the same content, but present a syntax or schema of the different data structure.
- a message that defines a mailing address can be generated by a first application in the form of a single data structure containing the following fields: an integer specifying a street number, an enumerator specifying a street type, a string of characters specifying a street name, an integer specifying a postal code, a string of characters specifying a city and a string of characters specifying a country.
- This same message defining the same postal address can be generated by a second application with a different syntax, for example a first data structure indicating the city and containing the postal code, the name of the city and the name of the country in the form of chains. of characters and a second data structure indicating the street and containing its number, type and name specified as strings.
- a first data structure indicating the city and containing the postal code
- a second data structure indicating the street and containing its number, type and name specified as strings.
- the semantic contents of the two messages are identical but their syntax is different which causes problems of interoperability between applications.
- the problem that the present invention seeks to solve is notably to allow the exchange of data between several applications without, however, sharing the same data schema or the same syntax.
- the invention proposes, in order to solve the problem previously introduced, a data adaptation method for dynamically transforming an original non-hierarchical data format into a structured data format used by a target with which one seeks to communicate.
- the non-hierarchical data format expression refers to a set of data of various types put end to end to form a message without a particular structure.
- the method and the system according to the invention are based on the use of a knowledge base or ontology in which a set of semantic concepts is defined.
- the invention has the following advantages: the use of an ontology as a basis for common knowledge makes it possible to be more complete than a lexicon, thanks in particular to the relations that exist between two semantic concepts such as, for example, the relationship of 'equivalence.
- the abandonment of the pivot format makes it possible to significantly reduce the calculation time.
- the invention relates to a data adaptation system comprising at least one transmitter executing at least one calling application and a receiver executing at least one called application, the transmitters and receivers being interconnected via a communication network, said calling application generating messages intended for said called application, said messages being structured according to a first syntax SA, said called application being adapted to receive messages structured according to a second syntax S B , said system being characterized in that it comprises a knowledge base ontological and a directory of common services to transmitters and receivers, said adaptation system further comprising a translation module connected to said database and said directory adapted to carry out a direct translation of said messages according to the second syntax SB-
- said ontological knowledge base defines a set of semantic specifications of the data exchanged between the transmitters and the receivers. of said system, said specifications being formalized by semantic concepts linked together by dependency relations, said translation module being adapted to exploit the content of said database in order to match the semantic specifications of the structured message according to the syntax SA with those of the structured message according to the syntax S B so that said messages have the same semantic content.
- the translation module is, in addition, adapted to exploit the relationships between semantic concepts defined in the ontological knowledge base to widen the correspondence searches between the semantic specifications of messages structured according to two syntaxes S A , SB different.
- the service directory contains all the syntaxes S A , S B associated with the applications executed by the transmitters and receivers of said system.
- the syntax S A of the calling application is defined as the sequence of a set of data without a particular structure or specific order.
- the semantic specifications contained in the ontological knowledge base are defined using the definition language "Resource Description Framework” or the definition language “Web Ontology Language”
- the syntaxes S A , S B contained in the service directory are defined using the description language IDL "Interface Description Language” or the description language XSD "XML Schema Description” or by a diagram defined in the LJML language "Unified Modeling Language”.
- said translation module is specific to each transmitter or is common to all the applications executed by the transmitters and receivers of said system and centralized in a software bus.
- the invention also relates to a data adaptation method in a system comprising at least one transmitter executing at least one calling application and a receiver executing at least one called application, the transmitters and receivers being interconnected via a communication network, said calling application generating at least one message destined for said called application, said message being structured according to a first syntax S A , said called application being adapted to receive at least one structured message according to a second syntax S B , said method being characterized in it includes at least the following steps:
- a step of determining the syntax S B associated with the application called from its identifier a step of direct translation of said message in a format adapted to the syntax S B but having the same semantic content as the initial message, from the correspondence between the semantic specifications of the syntax S A and those of the syntax S B ,> a step of transmitting said transformed message to the called application via said communication network.
- FIG. 1 is a diagram illustrating an embodiment of the data adaptation system according to the invention
- FIG. 2 is a diagram illustrating the steps implemented during the transmission of a source data message to a target having a data structure schema of its own
- FIG. 1 represents an exemplary embodiment of the data adaptation system according to the invention.
- Data transmitters 101, 102 and data receivers 11 1, 12.1 13 are connected together through a communication network 150. These transmitters and receivers are, for example, computer terminals which can support both the transmitter and receiver function or only one of them.
- Each transmitter 101, 102 executes at least one calling application 131, 132 which exchanges messages 181, 182 with a called application 141, 142, 143 executed on data receiving terminals 11.1, 112.1 13.
- These messages comprise a set of data represented according to a particular syntax S A , that is to say a structure for presenting their content as well as a type associated with each of the data. This syntax is specific to each calling application 131, 132.
- an application called 141, 142, 143 also has a particular syntax S B for representing the data messages it uses.
- the two calling syntaxes S A and called S B may be different, which raises the problem of interoperability when exchanging messages between two applications.
- each sending terminal 101, 102 also executes a translation module 120 whose function is translate the message to be sent in the syntax S B of the called application.
- This translation module 120 is, for example, a local library and specific to each application 131, 132 but can also be shared by several applications, in the latter case, the translation module 120 is centralized in a software bus that is used, in particular, to communicate several systems that are not interoperable, for example because they do not use the same communication protocols.
- the translation module 120 is furthermore connected to an ontological knowledge base 160 as well as to a service directory 170.
- the service directory 170 encompasses the set of syntax definitions, also called interfaces, of messages used. by all applications or services 131, 132,141, 142,143 participants. For this purpose, each new application that registers in the system according to the invention must communicate to the service directory 170 the syntax that it uses.
- the syntax can be defined using known description languages such as IDL ("Interface Description Language”), XSD ("XML Schema Description”) or a UML (Unified Modeling Language) diagram.
- the ontological knowledge base or ontology 160 contains all the semantic specifications necessary for the explanation of a domain of knowledge. Examples of such areas of knowledge are health, security applications or e-government.
- Ontology 160 includes, for each domain of knowledge that it processes, a data model comprising a set of concepts related to each other by semantic relations. These relationships are defined, for example, using a semantic specification language such as RDF ("Resource Description Framework") or OWL ("Web Ontology Language").
- RDF Resource Description Framework
- OWL Web Ontology Language
- Each concept corresponds to a semantic specification and can also include one or more instances, that is, elements belonging to this concept.
- the term semantic specification defines the set of information associated with a datum that makes it possible to specify its meaning in the contours of a particular domain.
- the ontology 160 is, for example, developed by experts working in the fields concerned by the applications 131, 132, 141, 142, 143, then standardized so that it can be shared by all the participating applications.
- An ontology 160 differs in particular from a conventional database in that it makes it possible to reasoning about concepts.
- An ontology associated for example with an inference engine, allows to automate the creation of new relations between the concepts by deduction on the definitions of the initial relations between concepts.
- the ontology 160 and the service directory 170 are preferably centralized and accessible by the transmitting and receiving terminals 101, 102.1, 112.1 through the network 150.
- the ontology 160 and the service directory 170 can be duplicated on each terminal if it has sufficient resources in terms of available memory for storing the two 160,170 bases.
- This embodiment has the advantage of avoiding data exchanges across the network 150 between the applications, the ontological base 160 and the service directory 170. This then involves setting up a system for synchronizing the databases. knowledge 160 between them as well as directories of services 170 between them.
- FIG. 2 illustrates the steps implemented by the invention for adapting the syntax of the messages transmitted from a calling application 131 to a called application.
- the application 131 executed on the terminal 101 tries to transmit a data message 202a to a user.
- remote application 141 with which it communicates via the network 150.
- the transmission of a message 202a is, for example, during the call by the application 131 of a function executed by the application 141 called remote .
- the calling application 131 transmits the message 202a with a syntax S A specific to the translation module 120 or in a non-hierarchical format directly.
- This syntax S A is for example defined using the Extensible Markup Language (XML). It also transmits a means 203 for identifying the called application 141.
- XML Extensible Markup Language
- This means 203 is, for example, the address of the receiver terminal 11 on the network 150 associated with a service identifier provided by the called application 141.
- the calling application 131 transmits to the software bus an identifier of the service with which it wishes to communicate and the software bus is responsible determine the address of the receiver terminal 1 1 1 that hosts this service.
- the translation module 120 transforms the message 202a in order to give it a simple structure with a single level of depth, that is to say that all the elements composing this message are put end to end without specific order in order to obtain a non-hierarchical data structure.
- This transformation is optional in the sense that the calling application 131 can directly transmit the message 202a in a non-hierarchical format.
- the translation module 120 sends a request 210a to interrogate the service directory 170 by communicating the identifier 203 to know the syntax S B that uses the called application 141.
- the service directory 170 transmits it 210b then the SB syntax required to generate the skeleton of the 202b message format adapted to be interpreted by the called application 141.
- This syntax S B uses, for example, different levels of depth and various types of data to structure the elements of a message. All the elements defined by the syntaxes used by the participating applications 101, 1 1 1 are semantically specified and all the semantic concepts come from the ontology 160 which is shared by all the applications 101, 1 1 1.
- the calling application 131 communicates directly with the service directory 170 in order to retrieve the syntax SB of the called application 141 and then communicates this syntax to the translation module 120.
- the translation module 120 sends a request 220a to the ontological knowledge base 160 so that it transmits to it 220b the semantic concepts associated with the elements that form the content of the data message 202a. From these semantic concepts, the translation module 120 establishes a correspondence between the semantic specifications of the data of the initial message 202a and those associated with the syntax S B. The translation module then generates the elements of the message 202b which have the same interpretation. semantics but which are structured according to the syntax S B which allows the called application 141 to process this message. Once generated, the message 202b is transmitted to a transmission infrastructure 201 which transmits the message to the remote application 141 via a reception infrastructure 21 1.
- the translation module 120 uses the relations between semantic concepts in the knowledge base 160 to expand matching searches.
- FIG. 3 schematizes the operation of an ontology comprising several concepts related by relations during the adaptation according to the invention of data structured in a first format to a second format.
- the ontology under consideration contains several concepts used to semantically specify a client from several attributes.
- the ontology includes in particular the concepts of person 301 and client 302 interconnected by the relation "is a" 311.
- the concepts of person 301 or client 302 are related by composition or aggregation relationships to the concepts of name. of family 303, first name 304, age 305 and sport 306.
- the input message 321 of the adaptation method according to the invention is for example written in XML and contains a certain amount of data enabling identification. a particular customer.
- the semantic content of this message 321 corresponds to the person Martin Dupont whose age is 18 years old and the sport practiced is swimming.
- This message 321 has a non-hierarchical data format, that is to say that the subjects name, surname, age and sport are listed successively without any particular structure, they are also specified in French.
- the format of the output message 323 of the method is different on the one hand because the fields specified in this message are written in English and a structural separation is performed between the fields "firstname” (English first name translation) and "surname” (translation) English name) that define a first level of semantic specification of the content of this message and other fields such as the age of the client that are stored in a structure labeled "other_info".
- the overall structure of the message relates to the concept of client 303 while that of the input message 321 relates to the concept of person 301.
- the method according to the invention makes a transformation 322 of the input message 321 to the message of output 323 whose semantic contents are identical by exploiting the relations between concepts of the ontology.
- the data is rearranged in the correct order and respecting the target structure.
- the method exploits the semantic relationship "is a" 31 1 between the concepts 301 and 303 to match the data fields of the same semantic content of the two messages 321, 323.
- Finally the unused data, for example those corresponding to the sport 306 are not taken into account in the output message 323.
- FIG. 4 schematizes a second example illustrating the method according to the invention.
- the same ontology is considered by adding the concept of full name 401 which is related to the concepts of last name 308 and first name 304 through the semantic relation "is composed of" 41 1.
- the input message 421 includes the surname 303 of the person, in the example Dupont and his first name 304 Martin.
- the structure of the output message 423 presents a single data field associated with the concept 401 full name which groups the first and last name into a single data item.
- the transformation 422 operated exploits both the relation 31 1 "is one" and the relation 411 "is composed of” to generate the composite data Martin Dupont in the output message 423.
- FIG. 5 schematizes a third example illustrating the method according to the invention.
- the input message 521 contains the semantic definition of several people 301, namely Martin Dupont and Jean Dubois.
- the method according to the invention makes it possible to define a set of non-ordered elements which will not be dissociated during the adaptation of data. This notion is particularly necessary for the management of types such as a list, a table, a collection. This notion makes it possible, while exploiting the semantic relations 311, 41 1 between concepts of the ontology, not to dissociate two initially associated data such as the name and the first name of a person.
- the method according to the invention generates 522 an output message 523 containing the composite names Jean Dubois and Martin Dupont and not Jean Dupont and Martin Dubois as would be possible if no notion of set ordered was specified.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Machine Translation (AREA)
- Information Transfer Between Computers (AREA)
- Communication Control (AREA)
Abstract
The invention relates to a system for adapting data including at least one transmitter (101, 102) executing at least one caller application (131, 132) and a receiver (111, 112, 113) executing at least one called application (141, 142, 143), the transmitters and receivers being interconnected via a communication network (150), said caller application (131, 132) generating messages (181, 182, 202a) for said called application (141, 142, 143), said messages (202a) being structured according to a first syntax SA, said called application (141, 142, 143) being adapted so as to receive messages structured according to a second syntax SB, said system being characterised in that it comprises an ontological knowledge base (160) and a directory of services (170) common to the transmitters and the receivers, each transmitter (101, 102) comprising a translation module (120) connected to said base (160) and to said directory (170) for structuring said messages in accordance with the second syntax SB.
Description
PROCEDE D'ADAPTATION DE DONNEES DANS UN SYSTEME DE TRANSMISSION DE DONNEES ET SYSTEME ASSOCIE METHOD FOR ADAPTING DATA IN A DATA TRANSMISSION SYSTEM AND SYSTEM THEREFOR
La présente invention concerne un système et un procédé d'adaptation de données dans le cadre d'une transmission de données entre un émetteur et un récepteur qui ne partagent pas la même définition syntaxique de ces données.The present invention relates to a system and method for data adaptation in the context of a data transmission between a transmitter and a receiver that do not share the same syntactical definition of these data.
L'invention s'applique notamment dans le cadre de systèmes communiquant composés d'applications logicielles qui échangent des messages entre elles.The invention applies in particular in the context of communicating systems consisting of software applications that exchange messages between them.
Une application logicielle connectée à un réseau de communication hétérogène communique dans la plupart des cas avec une autre application distante par l'intermédiaire de messages contenant des données. Ces messages peuvent avoir la même nature sémantique, c'est-à-dire véhiculer le même contenu, mais présenter une syntaxe ou un schéma de la structure des données différents. Par exemple, un message qui définit une adresse postale peut être généré par une première application sous la forme d'une seule structure de données contenant les champs suivants: un entier spécifiant un numéro de rue, un énumérateur spécifiant un type de rue , une chaine de caractères spécifiant un nom de rue, un entier spécifiant un code postal, une chaine de caractères spécifiant une ville et une chaine de caractères spécifiant un pays. Ce même message définissant la même adresse postale peut être généré par une seconde application avec une syntaxe différente, par exemple une première structure de données indiquant la ville et contenant le code postal, le nom de la ville et le nom du pays sous forme de chaines de caractères et une seconde structure de données indiquant la rue et contenant son numéro, son type et son nom spécifiés sous forme de chaines de caractères. Dans cet exemple, les contenus sémantiques des deux messages sont identiques mais leur syntaxe est
différente ce qui engendre des problèmes d'interopérabilité entre les applications.A software application connected to a heterogeneous communication network communicates in most cases with another remote application via messages containing data. These messages can have the same semantic nature, that is to say convey the same content, but present a syntax or schema of the different data structure. For example, a message that defines a mailing address can be generated by a first application in the form of a single data structure containing the following fields: an integer specifying a street number, an enumerator specifying a street type, a string of characters specifying a street name, an integer specifying a postal code, a string of characters specifying a city and a string of characters specifying a country. This same message defining the same postal address can be generated by a second application with a different syntax, for example a first data structure indicating the city and containing the postal code, the name of the city and the name of the country in the form of chains. of characters and a second data structure indicating the street and containing its number, type and name specified as strings. In this example, the semantic contents of the two messages are identical but their syntax is different which causes problems of interoperability between applications.
Le problème que cherche à résoudre la présente invention est notamment de permettre l'échange de données entre plusieurs applications sans pour autant qu'elles ne partagent le même schéma de données ou la même syntaxe.The problem that the present invention seeks to solve is notably to allow the exchange of data between several applications without, however, sharing the same data schema or the same syntax.
Les solutions connues à ce problème sont de plusieurs types. Tout d'abord l'interopérabilité peut être gérée par une première transformation du format du message d'origine vers un format pivot puis une seconde transformation du format pivot vers le format du message cible. Cette solution présente l'inconvénient d'engendrer un temps de calcul long. De plus l'écriture de ces deux transformations est laissée à la charge des fournisseurs des applications cliente et serveur puisqu'ils sont les seuls à maîtriser les formats d'origine et cible respectivement. Cela engendre un travail supplémentaire qu'ils doivent prendre en compte lors du développement de leurs applications.Known solutions to this problem are of several types. Firstly interoperability can be managed by a first transformation of the original message format to a pivot format and then a second transformation of the pivot format to the format of the target message. This solution has the disadvantage of generating a long calculation time. Moreover the writing of these two transformations is left to the load of the providers of client and server applications since they are the only ones to master the original and target formats respectively. This creates additional work that must be considered when developing their applications.
De plus il est possible de perdre des informations en passant par un format intermédiaire pivot. D'autres solutions sont basées sur l'utilisation de lexiques permettant de calculer une transformation du format du message d'origine vers le format du message cible en essayant d'établir des correspondances entre les éléments des messages et leurs structures de données. L'utilisation de lexiques n'est cependant pas suffisante car elle ne permet pas d'assurer une correspondance exacte entre deux termes dans tous les cas, par exemple les formes abrégées d'un terme ne sont pas prises en compte par un lexique.In addition it is possible to lose information through a pivot intermediate format. Other solutions are based on the use of lexicons to compute a transformation of the original message format into the format of the target message by attempting to match message elements with their data structures. The use of lexicons is however not sufficient because it does not allow to ensure an exact correspondence between two terms in all the cases, for example the abbreviated forms of a term are not taken into account by a lexicon.
L'invention propose, afin de résoudre le problème précédemment introduit, un procédé d'adaptation de données permettant de transformer dynamiquement un format de données non hiérarchique origine vers un format de données structuré utilisé par une cible avec laquelle on cherche à
communiquer. L'expression format de données non hiérarchique fait référence à un ensemble de données de types divers mises bout à bout afin de former un message sans structure particulière.The invention proposes, in order to solve the problem previously introduced, a data adaptation method for dynamically transforming an original non-hierarchical data format into a structured data format used by a target with which one seeks to communicate. The non-hierarchical data format expression refers to a set of data of various types put end to end to form a message without a particular structure.
Le procédé et le système selon l'invention prennent appui sur l'utilisation d'une base de connaissances ou ontologie dans laquelle sont définis un ensemble de concepts sémantiques.The method and the system according to the invention are based on the use of a knowledge base or ontology in which a set of semantic concepts is defined.
L'invention présente notamment les avantages suivants, l'utilisation d'une ontologie comme base de connaissance commune permet d'être plus complet qu'un lexique grâce notamment aux relations qui existent entre deux concepts sémantiques tel que, par exemple, la relation d'équivalence. De plus, l'abandon du format pivot permet de réduire significativement le temps de calcul.In particular, the invention has the following advantages: the use of an ontology as a basis for common knowledge makes it possible to be more complete than a lexicon, thanks in particular to the relations that exist between two semantic concepts such as, for example, the relationship of 'equivalence. In addition, the abandonment of the pivot format makes it possible to significantly reduce the calculation time.
L'invention a pour objet un système d'adaptation de données comprenant au moins un émetteur exécutant au moins une application appelante et un récepteur exécutant au moins une application appelée, les émetteurs et récepteurs étant interconnectés via un réseau de communication, ladite application appelante générant des messages à destination de ladite application appelée, lesdits messages étant structurés selon une première syntaxe SA, ladite application appelée étant adaptée à recevoir des messages structurés selon une seconde syntaxe SB, ledit système étant caractérisé en ce qu'il comporte une base de connaissances ontologique et un annuaire de services communs aux émetteurs et récepteurs, ledit système d'adaptation comportant en outre un module de traduction connecté à ladite base et audit annuaire adapté à effectuer une traduction directe desdits messages selon la seconde syntaxe SB-The invention relates to a data adaptation system comprising at least one transmitter executing at least one calling application and a receiver executing at least one called application, the transmitters and receivers being interconnected via a communication network, said calling application generating messages intended for said called application, said messages being structured according to a first syntax SA, said called application being adapted to receive messages structured according to a second syntax S B , said system being characterized in that it comprises a knowledge base ontological and a directory of common services to transmitters and receivers, said adaptation system further comprising a translation module connected to said database and said directory adapted to carry out a direct translation of said messages according to the second syntax SB-
Dans une variante de réalisation de l'invention ladite base de connaissances ontologique définit un ensemble de spécifications sémantiques des données échangées entre les émetteurs et les récepteurs
dudit système, lesdites spécifications étant formalisées par des concepts sémantiques liés entre eux par des relations de dépendance, ledit module de traduction étant adapté à exploiter le contenu de ladite base afin de faire correspondre les spécifications sémantiques du message structuré selon la syntaxe SA avec celles du message structuré selon la syntaxe SB de façon à ce que lesdits messages présentent le même contenu sémantique.In an alternative embodiment of the invention, said ontological knowledge base defines a set of semantic specifications of the data exchanged between the transmitters and the receivers. of said system, said specifications being formalized by semantic concepts linked together by dependency relations, said translation module being adapted to exploit the content of said database in order to match the semantic specifications of the structured message according to the syntax SA with those of the structured message according to the syntax S B so that said messages have the same semantic content.
Dans une variante de réalisation de l'invention le module de traduction est, en plus, adapté à exploiter les relations entre concepts sémantiques définis dans la base de connaissance ontologique pour élargir les recherches de correspondance entre les spécifications sémantiques des messages structurés selon deux syntaxes SA, SB différentes.In an alternative embodiment of the invention the translation module is, in addition, adapted to exploit the relationships between semantic concepts defined in the ontological knowledge base to widen the correspondence searches between the semantic specifications of messages structured according to two syntaxes S A , SB different.
Dans une variante de réalisation de l'invention l'annuaire de services contient l'ensemble des syntaxes SA, SB associées aux applications exécutées par les émetteurs et récepteurs dudit système. Dans une variante de réalisation de l'invention la syntaxe SA de l'application appelante est définie comme l'enchainement d'un ensemble de données sans structure particulière ni ordre spécifique.In an alternative embodiment of the invention, the service directory contains all the syntaxes S A , S B associated with the applications executed by the transmitters and receivers of said system. In an alternative embodiment of the invention the syntax S A of the calling application is defined as the sequence of a set of data without a particular structure or specific order.
Dans une variante de réalisation de l'invention les spécifications sémantiques contenues dans la base de connaissance ontologique sont définies à l'aide du langage de définition « Resource Description Framework » ou du langage de définition « Web Ontology Language »In an alternative embodiment of the invention the semantic specifications contained in the ontological knowledge base are defined using the definition language "Resource Description Framework" or the definition language "Web Ontology Language"
Dans une variante de réalisation de l'invention les syntaxes SA, SB contenues dans l'annuaire de services sont définies à l'aide du langage de description IDL « Interface Description Language » ou du langage de description XSD « XML Schéma Description » ou encore par un diagramme défini en langage LJML « Unified Modelling Language ».In an alternative embodiment of the invention, the syntaxes S A , S B contained in the service directory are defined using the description language IDL "Interface Description Language" or the description language XSD "XML Schema Description" or by a diagram defined in the LJML language "Unified Modeling Language".
Dans une variante de réalisation de l'invention ledit module de traduction est propre à chaque émetteur ou est commun à l'ensemble des applications exécutées par les émetteurs et récepteurs dudit système et centralisé dans un bus logiciel.
L'invention a également pour objet un procédé d'adaptation de données dans un système comprenant au moins un émetteur exécutant au moins une application appelante et un récepteur exécutant au moins une application appelée, les émetteurs et récepteurs étant interconnectés via un réseau de communication, ladite application appelante générant au moins un message à destination de ladite application appelée, ledit message étant structuré selon une première syntaxe SA, ladite application appelée étant adaptée à recevoir au moins un message structuré selon une seconde syntaxe SB, ledit procédé étant caractérisé en ce qu'il comprend au moins les étapes suivantes :In a variant embodiment of the invention, said translation module is specific to each transmitter or is common to all the applications executed by the transmitters and receivers of said system and centralized in a software bus. The invention also relates to a data adaptation method in a system comprising at least one transmitter executing at least one calling application and a receiver executing at least one called application, the transmitters and receivers being interconnected via a communication network, said calling application generating at least one message destined for said called application, said message being structured according to a first syntax S A , said called application being adapted to receive at least one structured message according to a second syntax S B , said method being characterized in it includes at least the following steps:
> une étape d'association dudit message avec un identifiant de l'application appelée destinataire dudit message,a step of associating said message with an identifier of the application called the recipient of said message,
> une étape de détermination de la syntaxe SB associée à l'application appelée à partir de son identifiant, > une étape de traduction directe dudit message dans un format adapté à la syntaxe SB mais ayant le même contenu sémantique que le message initial, à partir de la correspondance entre les spécifications sémantiques de la syntaxe SA et celles de la syntaxe SB , > une étape de transmission dudit message transformé à l'application appelée via ledit réseau de communication.a step of determining the syntax S B associated with the application called from its identifier, a step of direct translation of said message in a format adapted to the syntax S B but having the same semantic content as the initial message, from the correspondence between the semantic specifications of the syntax S A and those of the syntax S B ,> a step of transmitting said transformed message to the called application via said communication network.
D'autres caractéristiques apparaîtront à la lecture de la description détaillée donnée à titre d'exemple et non limitative qui suit faite en regard de dessins annexés qui représentent :Other characteristics will become apparent on reading the detailed description given by way of nonlimiting example, which follows, with reference to appended drawings which represent:
La figure 1 un schéma illustrant un mode de réalisation du système d'adaptation de données selon l'invention,FIG. 1 is a diagram illustrating an embodiment of the data adaptation system according to the invention,
La figure 2 un schéma illustrant les étapes mises en œuvre lors de la transmission d'un message de données source vers une cible ayant un schéma de structure de données propre,FIG. 2 is a diagram illustrating the steps implemented during the transmission of a source data message to a target having a data structure schema of its own,
Les figures 3, 4 et 5 des exemples de réalisation de l'invention.
La figure 1 représente un exemple de réalisation du système d'adaptation de données selon l'invention.Figures 3, 4 and 5 of the embodiments of the invention. FIG. 1 represents an exemplary embodiment of the data adaptation system according to the invention.
Des émetteurs de données 101 ,102 et des récepteurs de données 11 1 ,1 12,1 13 sont connectés ensemble à travers un réseau de communication 150. Ces émetteurs et récepteurs sont, par exemple, des terminaux informatiques qui peuvent endosser à la fois la fonction d'émetteur et de récepteur ou uniquement l'un des deux. Chaque émetteur 101 ,102 exécute au moins une application appelante 131 ,132 qui échange des messages 181 ,182 avec une application appelée 141 ,142,143 exécutée sur des terminaux récepteurs de données 1 1 1 ,112,1 13. Ces messages comportent un ensemble de données représentées selon une syntaxe particulière SA, c'est-à-dire une structure de présentation de leur contenu ainsi qu'un type associé à chacune des données. Cette syntaxe est propre à chaque application appelante 131 ,132. De façon similaire, une application appelée 141 ,142,143 possède également une syntaxe particulière SB pour la représentation des messages de données qu'elle utilise. Les deux syntaxes appelantes SA et appelées SB peuvent être différentes, ce qui pose le problème de l'interopérabilité lors de l'échange de messages entre deux applications.Data transmitters 101, 102 and data receivers 11 1, 12.1 13 are connected together through a communication network 150. These transmitters and receivers are, for example, computer terminals which can support both the transmitter and receiver function or only one of them. Each transmitter 101, 102 executes at least one calling application 131, 132 which exchanges messages 181, 182 with a called application 141, 142, 143 executed on data receiving terminals 11.1, 112.1 13. These messages comprise a set of data represented according to a particular syntax S A , that is to say a structure for presenting their content as well as a type associated with each of the data. This syntax is specific to each calling application 131, 132. Similarly, an application called 141, 142, 143 also has a particular syntax S B for representing the data messages it uses. The two calling syntaxes S A and called S B may be different, which raises the problem of interoperability when exchanging messages between two applications.
Pour permettre à chaque application appelante 131 ,132 d'adapter la syntaxe des messages qu'elle souhaite transmettre à celle de l'application appelée 141 ,142,143 , chaque terminal émetteur 101 ,102 exécute en plus un module de traduction 120 dont la fonction est de traduire le message à envoyer dans la syntaxe SB de l'application appelée. Ce module de traduction 120 est, par exemple, une bibliothèque locale et propre à chaque application 131 ,132 mais peut également être partagée par plusieurs applications, dans ce dernier cas, le module de traduction 120 est centralisé dans un bus logiciel qui est utilisé, notamment, pour faire communiquer plusieurs systèmes qui ne sont pas interopérables, par exemple car ils n'utilisent pas les mêmes protocoles de communication.
Le module de traduction 120 est, en outre, connecté à une base de connaissances ontologique 160 ainsi qu'à un annuaire de services 170. L'annuaire de services 170 englobe l'ensemble des définitions de syntaxes, également appelées interfaces, de messages utilisées par toutes les applications ou services 131 ,132,141 ,142,143 participantes. A cet effet, chaque nouvelle application qui s'enregistre dans le système selon l'invention doit communiquer à l'annuaire de services 170 la syntaxe qu'elle utilise. La syntaxe peut être définie à l'aide de langages de descriptions connus tels que IDL (« Interface Description Language »), XSD (« XML Schéma Description ») ou par un diagramme UML (« Unified Modelling Language »).To enable each calling application 131, 132 to adapt the syntax of the messages it wishes to transmit to that of the called application 141, 142, 143, each sending terminal 101, 102 also executes a translation module 120 whose function is translate the message to be sent in the syntax S B of the called application. This translation module 120 is, for example, a local library and specific to each application 131, 132 but can also be shared by several applications, in the latter case, the translation module 120 is centralized in a software bus that is used, in particular, to communicate several systems that are not interoperable, for example because they do not use the same communication protocols. The translation module 120 is furthermore connected to an ontological knowledge base 160 as well as to a service directory 170. The service directory 170 encompasses the set of syntax definitions, also called interfaces, of messages used. by all applications or services 131, 132,141, 142,143 participants. For this purpose, each new application that registers in the system according to the invention must communicate to the service directory 170 the syntax that it uses. The syntax can be defined using known description languages such as IDL ("Interface Description Language"), XSD ("XML Schema Description") or a UML (Unified Modeling Language) diagram.
La base de connaissances ontologique ou ontologie 160 contient l'ensemble des spécifications sémantiques nécessaires à l'explicitation d'un domaine de connaissance. Des exemples de tels domaines de connaissance sont la santé, les applications de sécurité ou l'administration électronique. L'ontologie 160 comporte, pour chaque domaine de connaissances qu'elle traite, un modèle de données comprenant un ensemble de concepts liés les uns aux autres par des relations sémantiques. Ces relations sont définies, par exemple, à l'aide d'un langage de spécification sémantique tel que RDF (« Resource Description Framework ») ou OWL (« Web Ontology Language »). Chaque concept correspond à une spécification sémantique et peut également comporter une ou plusieurs instances, c'est-à-dire des éléments appartenant à ce concept. Le terme spécification sémantique définit l'ensemble des informations associées à une donnée qui permettent d'en préciser le sens dans les contours d'un domaine particulier. Il s'agit de métadonnées qui permettent d'expliciter de manière la plus précise possible le contenu d'une donnée. L'ontologie 160 est, par exemple, développée par des experts oeuvrant dans les domaines concernés par les applications 131 ,132,141 ,142,143, puis standardisée de manière à pouvoir être partagée par l'ensemble des applications participantes. Une ontologie 160 diffère notamment d'une base de données classique en ce qu'elle permet de
raisonner sur des concepts. Une ontologie, associée par exemple à un moteur d'inférence, permet de façon automatisée la création de nouvelles relations entre les concepts par déduction sur les définitions des relations initiales entre concepts. L'ontologie 160 et l'annuaire de services 170 sont, préférablement, centralisées et accessibles par les terminaux émetteurs et récepteurs 101 ,102,1 1 1 ,112,1 13 à travers le réseau 150. Dans un autre mode de réalisation du système selon l'invention, l'ontologie 160 et l'annuaire de services 170 peuvent être dupliqués sur chaque terminal si celui-ci possède les ressources suffisantes en termes de mémoire disponible pour stocker les deux bases 160,170. Ce mode de réalisation a pour avantage d'éviter les échanges de données à travers le réseau 150 entre les applications, la base ontologique 160 et l'annuaire de services 170. Cela implique alors une mise en place d'un système de synchronisation des bases de connaissances 160 entre elles ainsi que des annuaires de services 170 entre eux.The ontological knowledge base or ontology 160 contains all the semantic specifications necessary for the explanation of a domain of knowledge. Examples of such areas of knowledge are health, security applications or e-government. Ontology 160 includes, for each domain of knowledge that it processes, a data model comprising a set of concepts related to each other by semantic relations. These relationships are defined, for example, using a semantic specification language such as RDF ("Resource Description Framework") or OWL ("Web Ontology Language"). Each concept corresponds to a semantic specification and can also include one or more instances, that is, elements belonging to this concept. The term semantic specification defines the set of information associated with a datum that makes it possible to specify its meaning in the contours of a particular domain. This is metadata that makes it possible to explain as precisely as possible the content of a given data. The ontology 160 is, for example, developed by experts working in the fields concerned by the applications 131, 132, 141, 142, 143, then standardized so that it can be shared by all the participating applications. An ontology 160 differs in particular from a conventional database in that it makes it possible to reasoning about concepts. An ontology, associated for example with an inference engine, allows to automate the creation of new relations between the concepts by deduction on the definitions of the initial relations between concepts. The ontology 160 and the service directory 170 are preferably centralized and accessible by the transmitting and receiving terminals 101, 102.1, 112.1 through the network 150. In another embodiment of the system according to the invention, the ontology 160 and the service directory 170 can be duplicated on each terminal if it has sufficient resources in terms of available memory for storing the two 160,170 bases. This embodiment has the advantage of avoiding data exchanges across the network 150 between the applications, the ontological base 160 and the service directory 170. This then involves setting up a system for synchronizing the databases. knowledge 160 between them as well as directories of services 170 between them.
La figure 2 illustre les étapes mises en œuvre par l'invention pour adapter la syntaxe des messages transmis d'une application appelante 131 vers une application appelée 141 L'application 131 exécutée sur le terminal 101 cherche à transmettre un message 202a de données à une application distante 141 avec laquelle elle communique par l'intermédiaire du réseau 150. La transmission d'un message 202a se fait, par exemple, lors de l'appel par l'application 131 d'une fonction exécutée par l'application 141 appelée distante. L'application appelante 131 transmet le message 202a avec une syntaxe SA spécifique au module de traduction 120 ou dans un format non hiérarchique directement. Cette syntaxe SA est par exemple définie à l'aide du langage de balisage extensible XML (« Extensible Markup Language »). Elle transmet également un moyen 203 d'identifier l'application appelée 141. Ce moyen 203 est, par exemple, l'adresse du terminal récepteur 1 11 sur le réseau 150 associé à un identifiant du service fourni par l'application appelée 141.
Dans une variante de réalisation pour laquelle le module de traduction 120 est centralisé dans un bus logiciel auquel sont connectées toutes les applications participantes, l'application appelante 131 transmet au bus logiciel un identifiant du service avec lequel elle souhaite dialoguer et le bus logiciel se charge de déterminer l'adresse du terminal récepteur 1 1 1 qui héberge ce service.FIG. 2 illustrates the steps implemented by the invention for adapting the syntax of the messages transmitted from a calling application 131 to a called application. The application 131 executed on the terminal 101 tries to transmit a data message 202a to a user. remote application 141 with which it communicates via the network 150. The transmission of a message 202a is, for example, during the call by the application 131 of a function executed by the application 141 called remote . The calling application 131 transmits the message 202a with a syntax S A specific to the translation module 120 or in a non-hierarchical format directly. This syntax S A is for example defined using the Extensible Markup Language (XML). It also transmits a means 203 for identifying the called application 141. This means 203 is, for example, the address of the receiver terminal 11 on the network 150 associated with a service identifier provided by the called application 141. In an alternative embodiment for which the translation module 120 is centralized in a software bus to which all the participating applications are connected, the calling application 131 transmits to the software bus an identifier of the service with which it wishes to communicate and the software bus is responsible determine the address of the receiver terminal 1 1 1 that hosts this service.
Dans un premier temps, le module de traduction 120 transforme le message 202a afin de lui donner une structure simple avec un seul niveau de profondeur, c'est-à-dire que l'ensemble des éléments composant ce message sont mis bout à bout sans ordre spécifique afin d'obtenir une structure de données non hiérarchique. Cette transformation est optionnelle au sens où l'application appelante 131 peut transmettre directement le message 202a avec un format non hiérarchique.In a first step, the translation module 120 transforms the message 202a in order to give it a simple structure with a single level of depth, that is to say that all the elements composing this message are put end to end without specific order in order to obtain a non-hierarchical data structure. This transformation is optional in the sense that the calling application 131 can directly transmit the message 202a in a non-hierarchical format.
Dans un second temps, le module de traduction 120 envoi une requête 210a pour interroger l'annuaire de services 170 en lui communiquant l'identifiant 203 afin de connaître la syntaxe SB qu'utilise l'application appelée 141 . L'annuaire de services 170 lui transmet 210b alors la syntaxe SB requise afin de générer le squelette du format du message 202b adapté à être interprété par l'application appelée 141 . Cette syntaxe SB utilise, par exemple, différents niveaux de profondeur et des types de données divers pour structurer les éléments d'un message. Tous les éléments définis par les syntaxes utilisées par les applications participantes 101 ,1 1 1 sont spécifiés sémantiquement et tous les concepts sémantiques proviennent de l'ontologie 160 qui est partagée par toutes les applications 101 ,1 1 1 . Dans une variante de réalisation, l'application appelante 131 communique directement avec l'annuaire de services 170 afin de récupérer la syntaxe SB de l'application appelée 141 et communique ensuite cette syntaxe au module de traduction 120.In a second step, the translation module 120 sends a request 210a to interrogate the service directory 170 by communicating the identifier 203 to know the syntax S B that uses the called application 141. The service directory 170 transmits it 210b then the SB syntax required to generate the skeleton of the 202b message format adapted to be interpreted by the called application 141. This syntax S B uses, for example, different levels of depth and various types of data to structure the elements of a message. All the elements defined by the syntaxes used by the participating applications 101, 1 1 1 are semantically specified and all the semantic concepts come from the ontology 160 which is shared by all the applications 101, 1 1 1. In an alternative embodiment, the calling application 131 communicates directly with the service directory 170 in order to retrieve the syntax SB of the called application 141 and then communicates this syntax to the translation module 120.
Dans un troisième temps, le module de traduction 120 envoie une requête 220a à la base de connaissances ontologique 160 afin que celle-ci
lui transmette 220b les concepts sémantiques associés aux éléments qui forment le contenu du message de données 202a. A partir de ces concepts sémantiques, le module de traduction 120 établit une correspondance entre les spécifications sémantiques des données du message initial 202a et celles associées à la syntaxe SB- Le module de traduction génère alors les éléments du message 202b qui ont la même interprétation sémantique mais qui sont structurés selon la syntaxe SB qui permet à l'application appelée 141 de traiter ce message. Une fois généré, le message 202b est transmis à une infrastructure de transmission 201 qui transmet le message à l'application distante 141 via l'intermédiaire d'une infrastructure de réception 21 1.In a third step, the translation module 120 sends a request 220a to the ontological knowledge base 160 so that it transmits to it 220b the semantic concepts associated with the elements that form the content of the data message 202a. From these semantic concepts, the translation module 120 establishes a correspondence between the semantic specifications of the data of the initial message 202a and those associated with the syntax S B. The translation module then generates the elements of the message 202b which have the same interpretation. semantics but which are structured according to the syntax S B which allows the called application 141 to process this message. Once generated, the message 202b is transmitted to a transmission infrastructure 201 which transmits the message to the remote application 141 via a reception infrastructure 21 1.
Dans une variante de réalisation de l'invention, dans le cas où il n'est pas possible de trouver une correspondance directe entre les concepts sémantiques de l'application appelante et ceux de l'application appelée, le module de traduction 120 utilise les relations entre concepts sémantiques présents dans la base de connaissances 160 pour élargir les recherches de correspondance.In an alternative embodiment of the invention, in the case where it is not possible to find a direct correspondence between the semantic concepts of the calling application and those of the called application, the translation module 120 uses the relations between semantic concepts in the knowledge base 160 to expand matching searches.
La figure 3 schématise l'exploitation d'une ontologie comprenant plusieurs concepts reliés par des relations lors de l'adaptation selon l'invention de données structurées selon un premier format vers un second format.FIG. 3 schematizes the operation of an ontology comprising several concepts related by relations during the adaptation according to the invention of data structured in a first format to a second format.
L'ontologie considérée contient plusieurs concepts servants à spécifier sémantiquement un client à partir de plusieurs attributs. L'ontologie comprend notamment les concepts de personne 301 et de client 302 reliés entre eux par la relation « est un » 311. Les concepts de personne 301 ou de client 302 sont reliés par des relations de composition ou d'agrégation aux concepts de nom de famille 303, de prénom 304, d'âge 305 et de sport 306. Le message d'entrée 321 du procédé d'adaptation selon l'invention est par exemple écrit en langage XML et contient un certain nombre de données permettant d'identifier un client particulier. Le contenu sémantique de ce message 321 correspond à la personne Martin Dupont dont l'âge est 18 ans
et le sport pratiqué est la natation. Ce message 321 présente un format de donnée non hiérarchique, c'est-à-dire que les sujets nom, prénom, âge et sport sont listés successivement sans structure particulière, ils sont de plus spécifiés en langue française. Le format du message 323 de sortie du procédé est différent d'une part car les champs spécifiés dans ce message sont rédigés en anglais et une séparation structurelle est effectuée entre les champs « firstname » (traduction anglaise de prénom) et « surname » (traduction anglaise de nom de famille) qui définissent un premier niveau de spécification sémantique du contenu de ce message et d'autres champs tels l'âge du client qui sont rangés dans une structure étiquetée «other_info ». Enfin la structure globale du message se rapporte au concept de client 303 alors que celle du message d'entrée 321 se rapporte au concept de personne 301. Le procédé selon l'invention opère une transformation 322 du message d'entrée 321 vers le message de sortie 323 dont les contenus sémantiques sont identiques en exploitant les relations entre concepts de l'ontologie. Les données sont réarrangées dans le bon ordre et en respectant la structure cible. Le procédé exploite la relation sémantique « est un » 31 1 entre les concepts personne 301 et client 303 afin d'effectuer une correspondance entre les champs de données de même contenu sémantique des deux messages 321 , 323. Enfin les données non utilisées, par exemple celles correspondant au sport 306 ne sont pas prises en compte dans le message de sortie 323.The ontology under consideration contains several concepts used to semantically specify a client from several attributes. The ontology includes in particular the concepts of person 301 and client 302 interconnected by the relation "is a" 311. The concepts of person 301 or client 302 are related by composition or aggregation relationships to the concepts of name. of family 303, first name 304, age 305 and sport 306. The input message 321 of the adaptation method according to the invention is for example written in XML and contains a certain amount of data enabling identification. a particular customer. The semantic content of this message 321 corresponds to the person Martin Dupont whose age is 18 years old and the sport practiced is swimming. This message 321 has a non-hierarchical data format, that is to say that the subjects name, surname, age and sport are listed successively without any particular structure, they are also specified in French. The format of the output message 323 of the method is different on the one hand because the fields specified in this message are written in English and a structural separation is performed between the fields "firstname" (English first name translation) and "surname" (translation) English name) that define a first level of semantic specification of the content of this message and other fields such as the age of the client that are stored in a structure labeled "other_info". Finally, the overall structure of the message relates to the concept of client 303 while that of the input message 321 relates to the concept of person 301. The method according to the invention makes a transformation 322 of the input message 321 to the message of output 323 whose semantic contents are identical by exploiting the relations between concepts of the ontology. The data is rearranged in the correct order and respecting the target structure. The method exploits the semantic relationship "is a" 31 1 between the concepts 301 and 303 to match the data fields of the same semantic content of the two messages 321, 323. Finally the unused data, for example those corresponding to the sport 306 are not taken into account in the output message 323.
La figure 4 schématise un deuxième exemple illustrant le procédé selon l'invention. La même ontologie est considérée en y ajoutant le concept de nom complet 401 qui est relié aux concepts de nom de famille 308 et de prénom 304 par l'intermédiaire de la relation sémantique « est composé de » 41 1.
Le message d'entrée 421 comprend le nom de famille 303 de la personne, dans l'exemple Dupont et son prénom 304 Martin. La structure du message de sortie 423 présente un seul champ de donnée associé au concept 401 nom complet qui regroupe le nom et le prénom en une seule donnée. Dans ce cas la transformation 422 opérée exploite à la fois la relation 31 1 « est un » et la relation 411 « est composé de » afin générer la donnée composée Martin Dupont dans le message de sortie 423.FIG. 4 schematizes a second example illustrating the method according to the invention. The same ontology is considered by adding the concept of full name 401 which is related to the concepts of last name 308 and first name 304 through the semantic relation "is composed of" 41 1. The input message 421 includes the surname 303 of the person, in the example Dupont and his first name 304 Martin. The structure of the output message 423 presents a single data field associated with the concept 401 full name which groups the first and last name into a single data item. In this case, the transformation 422 operated exploits both the relation 31 1 "is one" and the relation 411 "is composed of" to generate the composite data Martin Dupont in the output message 423.
La figure 5 schématise un troisième exemple illustrant le procédé selon l'invention. Le message d'entrée 521 contient la définition sémantique de plusieurs personnes 301 , à savoir Martin Dupont et Jean Dubois. Le procédé selon l'invention permet de définir un ensemble d'éléments non ordonnés qui ne seront pas dissociés lors de l'adaptation de données. Cette notion est notamment nécessaire pour la gestion des types tels qu'une liste, un tableau, une collection. Cette notion permet, tout en exploitant les relations sémantiques 311 ,41 1 entre concepts de l'ontologie, de ne pas dissocier deux données initialement associées tels le nom et le prénom d'une personne. Ainsi le procédé selon l'invention génère 522 un message de sortie 523 contenant les noms composés Jean Dubois et Martin Dupont et non pas Jean Dupont et Martin Dubois comme cela serait possible si aucune notion d'ensemble ordonnés n'était spécifiée.
FIG. 5 schematizes a third example illustrating the method according to the invention. The input message 521 contains the semantic definition of several people 301, namely Martin Dupont and Jean Dubois. The method according to the invention makes it possible to define a set of non-ordered elements which will not be dissociated during the adaptation of data. This notion is particularly necessary for the management of types such as a list, a table, a collection. This notion makes it possible, while exploiting the semantic relations 311, 41 1 between concepts of the ontology, not to dissociate two initially associated data such as the name and the first name of a person. Thus, the method according to the invention generates 522 an output message 523 containing the composite names Jean Dubois and Martin Dupont and not Jean Dupont and Martin Dubois as would be possible if no notion of set ordered was specified.
Claims
1. Système d'adaptation de données comprenant au moins un émetteur (101 ,102) exécutant au moins une application appelante (131 ,132) et un récepteur (1 1 1 ,112,1 13) exécutant au moins une application appelée (141 ,142,143), les émetteurs et récepteurs étant interconnectés via un réseau (150) de communication, ladite application appelante (131 ,132) générant des messages (181 ,182,202a) à destination de ladite application appelée (141 ,142,143), lesdits messages (202a) étant structurés selon une première syntaxe SA, ladite application appelée (141 ,142,143) étant adaptée à recevoir des messages (202b) structurés selon une seconde syntaxe SB, ledit système étant caractérisé en ce qu'il comporte une base de connaissances ontologique (160) et un annuaire de services (170) communs aux émetteurs et récepteurs, ledit système d'adaptation comportant en outre un module de traduction (120) connecté à ladite base (160) et audit annuaire (170) adapté à effectuer une traduction directe desdits messages (202a) selon la seconde syntaxe SB.A data adaptation system comprising at least one transmitter (101, 102) executing at least one calling application (131, 132) and a receiver (111, 112.1 13) executing at least one called application (141). , 142, 143), the transceivers being interconnected via a communication network (150), said calling application (131, 132) generating messages (181, 182, 202a) to said called application (141, 142, 143), said messages (202a) being structured according to a first syntax S A , said called application (141, 142, 143) being adapted to receive messages (202b) structured according to a second syntax SB, said system being characterized in that it comprises a knowledge base ontological (160) and a service directory (170) common to transmitters and receivers, said adaptation system further comprising a translation module (120) connected to said base (160) and said directory (170) adapted to killing a direct translation of said messages (202a) according to the second syntax S B.
2. Système d'adaptation de données selon la revendication 1 caractérisé en ce que ladite base de connaissances ontologique (1 60) définit un ensemble de spécifications sémantiques des données échangées entre les émetteurs (101 ,102) et les récepteurs (1 1 1 ,1 12,1 13) dudit système, lesdites spécifications étant formalisées par des concepts sémantiques liés entre eux par des relations de dépendance, ledit module de traduction (120) étant adapté à exploiter le contenu de ladite base (1 60) afin de faire correspondre les spécifications sémantiques du message (202a) structuré selon la syntaxe SA avec celles du message (202b) structuré selon la syntaxe SB de façon à ce que lesdits messages (202a,202b) présentent le même contenu sémantique.2. Data adaptation system according to claim 1, characterized in that said ontological knowledge base (1 60) defines a set of semantic specifications of the data exchanged between the transmitters (101, 102) and the receivers (1 1 1, 1 12.1 13) of said system, said specifications being formalized by semantic concepts interconnected by dependency relations, said translation module (120) being adapted to exploit the contents of said base (1 60) in order to match the semantic specifications of the message (202a) structured according to the syntax S A with those of the message (202b) structured according to the syntax SB so that said messages (202a, 202b) have the same semantic content.
3. Système d'adaptation de données selon la revendication 2 caractérisé en ce que le module de traduction (120) est, en plus, adapté à exploiter les relations entre concepts sémantiques définis dans la base de connaissance ontologique (160) pour élargir les recherches de correspondance entre les spécifications sémantiques des messages (202a,202b) structurés selon deux syntaxes SA, SB différentes.Data adaptation system according to claim 2, characterized in that the translation module (120) is further adapted to exploit the relationships between semantic concepts defined in the ontological knowledge base (160) to broaden the searches. correspondence between the semantic specifications of messages (202a, 202b) structured according to two different syntaxes S A , S B.
4. Système d'adaptation de données selon l'une des revendications précédentes caractérisé en ce que l'annuaire de services (170) contient l'ensemble desdites syntaxes SA, SB associées aux applications (131 ,132,141 ,142,143) exécutées par les émetteurs et récepteurs dudit système.4. Data adaptation system according to one of the preceding claims, characterized in that the service directory (170) contains all of said syntaxes S A , S B associated with the applications (131, 132, 141, 142, 143) executed by the transmitters and receivers of said system.
5. Système d'adaptation de données selon l'une des revendications précédentes caractérisé en ce que la syntaxe SA de l'application appelante (131 ,132) est définie comme l'enchainement d'un ensemble de données sans structure particulière ni ordre spécifique.5. Data adaptation system according to one of the preceding claims, characterized in that the syntax S A of the calling application (131, 132) is defined as the sequence of a data set without special structure or order specific.
6. Système d'adaptation de données selon l'une des revendications 2 à 5 caractérisé en ce que lesdites spécifications sémantiques contenues dans la base de connaissance ontologique (160) sont définies à l'aide du langage de définition « Resource Description Framework » ou du langage de définition « Web Ontology Language »Data adaptation system according to one of Claims 2 to 5, characterized in that the said semantic specifications contained in the ontological knowledge base (160) are defined using the definition language "Resource Description Framework" or of the definition language "Web Ontology Language"
7. Système d'adaptation de données selon l'une des revendications 4 à 6 caractérisé en ce que lesdites syntaxes SA, SB contenues dans l'annuaire de services (170) sont définies à l'aide du langage de description IDL « Interface Description Language » ou du langage de description XSD « XML Schéma Description » ou encore par un diagramme défini en langage UML « Unified Modelling Language ».Data adaptation system according to one of Claims 4 to 6, characterized in that the said syntaxes S A , S B contained in the service directory (170) are defined using the language of Description IDL "Interface Description Language" or the description language XSD "XML Schema Description" or a diagram defined in UML "Unified Modeling Language".
8. Système d'adaptation de données selon l'une des revendications précédentes caractérisé en ce que ledit module de traduction (120) est propre à chaque émetteur (101 ,102) ou est commun à l'ensemble des applications (131 ,132,141 ,142,143) exécutées par lesdits émetteurs et récepteurs dudit système et centralisé dans un bus logiciel.8. Data adaptation system according to one of the preceding claims characterized in that said translation module (120) is specific to each transmitter (101, 102) or is common to all applications (131, 132, 141, 142, 143) executed by said transmitters and receivers of said system and centralized in a software bus.
9. Procédé d'adaptation de données dans un système comprenant au moins un émetteur (101 ,102) exécutant au moins une application appelante (131 ,132) et un récepteur (1 11 ,1 12,1 13) exécutant au moins une application appelée (141 ,142,143), les émetteurs et récepteurs étant interconnectés via un réseau (150) de communication, ladite application appelante (131 ,132) générant au moins un message (181 ,182,202a) à destination de ladite application appelée (141 ,142,143), ledit message (202a) étant structuré selon une première syntaxe SA, ladite application appelée (141 ,142,143) étant adaptée à recevoir au moins un message (202b) structuré selon une seconde syntaxe SB, ledit procédé étant caractérisé en ce qu'il comprend au moins les étapes suivantes :A method of data adaptation in a system comprising at least one transmitter (101, 102) executing at least one calling application (131, 132) and a receiver (11, 12.1, 13) executing at least one application called (141, 142, 143), the transceivers being interconnected via a communication network (150), said calling application (131, 132) generating at least one message (181, 182, 202a) to said called application (141, 142,143), said message (202a) being structured according to a first syntax S A , said called application (141, 142, 143) being adapted to receive at least one message (202b) structured according to a second syntax SB, said method being characterized in that it includes at least the following steps:
> une étape d'association dudit message (202a) avec un identifiant (203) de l'application appelée (141 ,142,143) destinataire dudit message (202a),a step of associating said message (202a) with an identifier (203) of the called application (141, 142, 143) addressed to said message (202a),
> une étape de détermination de la syntaxe SB associée à l'application appelée (141 ,142,143) à partir de son identifiant (203), > une étape de traduction directe dudit message (202a) dans un format (202b) adapté à la syntaxe SB mais ayant le même contenu sémantique que le message (202a) initial, à partir de la correspondance entre les spécifications sémantiques de la syntaxe SA et celles de la syntaxe SB , une étape de transmission dudit message transformé (202b) à l'application appelée (141 ,142,143) via ledit réseau de communication (150). a step of determining the syntax S B associated with the called application (141, 142, 143) from its identifier (203), a step of direct translation of said message (202a) into a format (202b) adapted to the syntax S B but having the same semantic content than the initial message (202a), from the correspondence between the semantic specifications of the syntax S A and those of the syntax S B , a step of transmitting said transformed message (202b) to the called application (141, 142, 143) via said communication network (150).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0902523A FR2946208B1 (en) | 2009-05-26 | 2009-05-26 | METHOD FOR ADAPTING DATA IN A DATA TRANSMISSION SYSTEM AND ASSOCIATED SYSTEM |
PCT/EP2010/057069 WO2010136408A1 (en) | 2009-05-26 | 2010-05-21 | Method for adapting data in a data transmission system, and associated system |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2436163A1 true EP2436163A1 (en) | 2012-04-04 |
Family
ID=41722752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP10723977A Withdrawn EP2436163A1 (en) | 2009-05-26 | 2010-05-21 | Method for adapting data in a data transmission system, and associated system |
Country Status (7)
Country | Link |
---|---|
US (1) | US20120143954A1 (en) |
EP (1) | EP2436163A1 (en) |
JP (1) | JP2012528367A (en) |
AU (1) | AU2010252068A1 (en) |
CA (1) | CA2763289A1 (en) |
FR (1) | FR2946208B1 (en) |
WO (1) | WO2010136408A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013088287A1 (en) * | 2011-12-12 | 2013-06-20 | International Business Machines Corporation | Generation of natural language processing model for information domain |
EP2640018A1 (en) * | 2012-03-13 | 2013-09-18 | Alcatel-Lucent Deutschland AG | Protocol modeling & engineering system |
CN112769795B (en) * | 2020-12-30 | 2022-07-29 | 中国兵器装备集团自动化研究所有限公司 | Message communication analysis system and method based on data warehouse |
CN115150244A (en) * | 2022-06-28 | 2022-10-04 | 上海中汇亿达金融信息技术有限公司 | Adaptation system and method for managing external data interaction with a funding system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4016A (en) * | 1845-04-26 | Improvement in the method of attaching a movable to the stationary keel of a vessel | ||
US20040162823A1 (en) * | 2003-02-13 | 2004-08-19 | Van De Loo Kaj | Message translation using adaptive agents |
US7739696B2 (en) * | 2005-09-08 | 2010-06-15 | Honeywell International Inc. | Message translation systems and methods |
JP4859456B2 (en) * | 2005-12-27 | 2012-01-25 | 株式会社日立製作所 | Data schema mapping program and computer system |
US8127035B1 (en) * | 2006-09-28 | 2012-02-28 | Rockwell Automation Technologies, Inc. | Distributed message engines and systems |
AU2008216177A1 (en) * | 2007-02-14 | 2008-08-21 | The General Hospital Corporation | Medical laboratory report message gateway |
US9390160B2 (en) * | 2007-08-22 | 2016-07-12 | Cedric Bousquet | Systems and methods for providing improved access to pharmacovigilance data |
US8174720B2 (en) * | 2008-11-06 | 2012-05-08 | Xerox Corporation | Packaging digital front end |
-
2009
- 2009-05-26 FR FR0902523A patent/FR2946208B1/en active Active
-
2010
- 2010-05-21 EP EP10723977A patent/EP2436163A1/en not_active Withdrawn
- 2010-05-21 US US13/322,220 patent/US20120143954A1/en not_active Abandoned
- 2010-05-21 WO PCT/EP2010/057069 patent/WO2010136408A1/en active Application Filing
- 2010-05-21 JP JP2012512322A patent/JP2012528367A/en active Pending
- 2010-05-21 CA CA2763289A patent/CA2763289A1/en not_active Abandoned
- 2010-05-21 AU AU2010252068A patent/AU2010252068A1/en not_active Abandoned
Non-Patent Citations (1)
Title |
---|
See references of WO2010136408A1 * |
Also Published As
Publication number | Publication date |
---|---|
AU2010252068A1 (en) | 2012-01-12 |
US20120143954A1 (en) | 2012-06-07 |
JP2012528367A (en) | 2012-11-12 |
FR2946208B1 (en) | 2012-02-10 |
CA2763289A1 (en) | 2010-12-02 |
WO2010136408A1 (en) | 2010-12-02 |
FR2946208A1 (en) | 2010-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080065656A1 (en) | Discovery web service | |
US7657609B2 (en) | Data transfer in a multi-environment document management system access | |
US7650609B2 (en) | Multi-environment document management system access | |
FR2850814A1 (en) | SYSTEM AND METHOD FOR SYNCHRONIZING DATA BETWEEN SERVICE PORTALS AND SERVICE ACCESS PLATFORM USING SUCH A SYNCHRONIZATION SYSTEM | |
US8380549B2 (en) | Architectural design for embedded support application software | |
WO2010136408A1 (en) | Method for adapting data in a data transmission system, and associated system | |
EP1704700B1 (en) | Method and system for operating a computer network which is intended for content publishing | |
CN100591056C (en) | Method and system for processing message | |
WO2010070006A1 (en) | Data publication and subscription system | |
CN103092982B (en) | Based on the information service system of multi views business model | |
US8359323B2 (en) | Method and system for providing access to adapters | |
Reynaud et al. | An application of the mediator approach to services over the web | |
Castano et al. | Ontology-based interoperability services for semantic collaboration in open networked systems | |
WO2011029681A1 (en) | System and method for providing electronic business cards by searching storage means in accordance with one or more criteria | |
EP1054332B1 (en) | System and method for managing attributes in an object-oriented environment | |
Rosenthal et al. | Description, conversion, and planning for semantic interoperability | |
EP1503541B1 (en) | Method and device for configurable storing of network elements' data in a network management system | |
US8930523B2 (en) | Stateful business application processing in an otherwise stateless service-oriented architecture | |
EP1805936A1 (en) | Method, system and network administration device | |
Bynens et al. | Ontology-based discovery of data-driven services | |
EP2248047A1 (en) | Device for exchanging documents between two parties through a network | |
Huemer et al. | Erpel: Enabling seamless ad hoc cross enterprise collaborations | |
FR2923036A1 (en) | AUTOMATIC WEB SERVICE COMPOSITION METHOD AND COMPUTER SYSTEM FOR IMPLEMENTING SUCH A METHOD | |
FR2831689A1 (en) | Personalized content generation method for terminal e.g. mobile telephone, collects personalized data from user via portal then uses collected data to personalize general content which is transmitted back to user | |
FR3018657A1 (en) | METHOD OF AUTOMATICALLY MANAGING CALLS ENTERING A COMMUNICATION APPARATUS AND CORRESPONDING INSTALLATION |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20111118 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR |
|
DAX | Request for extension of the european patent (deleted) | ||
17Q | First examination report despatched |
Effective date: 20120926 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20130403 |