EP1877898A1 - Method of creating customisable applications - Google Patents

Method of creating customisable applications

Info

Publication number
EP1877898A1
EP1877898A1 EP06764574A EP06764574A EP1877898A1 EP 1877898 A1 EP1877898 A1 EP 1877898A1 EP 06764574 A EP06764574 A EP 06764574A EP 06764574 A EP06764574 A EP 06764574A EP 1877898 A1 EP1877898 A1 EP 1877898A1
Authority
EP
European Patent Office
Prior art keywords
application
type
dom
node
creating
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
Application number
EP06764574A
Other languages
German (de)
French (fr)
Inventor
John Pritchard
Olivier Poupeney
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ecensity Corp
Original Assignee
Ecensity Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ecensity Corp filed Critical Ecensity Corp
Publication of EP1877898A1 publication Critical patent/EP1877898A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Definitions

  • the present invention relates to the field of creating computer applications, in particular customizable applications.
  • the present invention relates more particularly to a method for creating customizable applications whose display may depend on the conditions of use, the identity or the profile of the user.
  • the prior art has already proposed a technical solution to this problem of personalization by proposing an architecture in the form of a source of structured information, such as a relational or XML database, including the definition and the relative data.
  • a source of structured information such as a relational or XML database
  • personalization information as well as the links between each type of information (eg profile, page, ).
  • the various application components for example java type, allow the display of the personalized pages by call to an application programming interface (API), composed of a set of object classes, which encapsulates the access to the application. source and recovery of the personalization information, which is then processed and returned to application components as a customized result.
  • API application programming interface
  • This database includes customization information used to provide a customized result based on the user, A or B.
  • an application component for example a Web component, calls a Java class using parameters associated with the user A.
  • This class is possibly guided by an ancestor Java class, which encapsulates the generic logic.
  • the logic of the Java class then handles a set of queries and responses from the data source containing personalization information and processes this information so as to render a personalized result A.
  • a method for creating an application corresponding to a set of components comprising:
  • a first preliminary step of creating an application consisting in: defining a first set of XML documents whose nodes represent said conditions of use;
  • each of said first and second sets comprising XML documents comprising a first type of node associated with an executable and a second type of node defining a reference to an XML document of said first and second set; the documents of the second set comprising a third type of node defining a reference an XML document of the same second set and representing a component of the same type;
  • a second step of executing said application consisting in: reading with the help of an interpreter, a document of the second set for the interpretation of all of its nodes and the nodes of the referenced documents of said first and second set the interpretation of each node of the first type allowing executions of said associated executables;
  • the invention also relates to a computer program, possibly stored on a data carrier, for implementing the method according to the invention.
  • FIG. 1 illustrates the method and personalization architecture according to the prior art
  • FIG. 2 illustrates the method and the customization architecture according to the invention
  • FIG. 3 represents a specific example of personalization DOM according to the invention.
  • FIGS. 4a to 4c correspond to an exemplary XML code for the implementation of the present invention.
  • a set of DOM A is defined having as nodes the elements corresponding to the presentation information.
  • This DOM A therefore comprises elements that represent the non-generic logic for the INFO personalization information that it defines.
  • inheritance is used in the sense known to those skilled in the field of programming, such as, for example, an inheritance of object classes (ex: java).
  • This first DOM has thus inherited a second type of
  • Each element of the DOM A thus comprises either all of the personalization information necessary for personalization, or only part of it, the information complement being contained in the DOM B which it inherits.
  • DOM A elements may refer to other C DOMs in the sense of the reference XML to complete the information elements necessary for customization.
  • Each type of element representing the nodes of the DOMs according to the invention refers to a Java class containing a generic logic. A specific interpreter then interprets the elements to call the correct Java class.
  • the invention is now more specifically described in the context of a profile as illustrated in FIG. 3.
  • the DOM referenced 1 comprises an element
  • This DOM 1 comprises a “Profile” element Ib which refers to a referenced DOM 2 comprising a “Profile” element 2a, named “Customer” 2b.
  • This profile corresponds for example to the type of client by default.
  • the reference between the DOM 1 and 2 allows the call for this type of client, elements of the type "displet” Id , the If, and the display of the displets “Displet 1" and “Displet 2" as defined in the DOM 1.
  • This display is realized by execution of a java class associated for example with the "Object presentation” elements 6c of the Displet ⁇ a element of the DOM 6.
  • DOM 4 is created comprising a "presentation space” type element 4a which on the one hand inherits the DOM 1 in order to also display for the client "GoId” the displets 1 and 2, and which of On the other hand, there is a “Profile” element 4b that references the DOM 3. In this way, the displet "Displet 3" will be displayed for "GoId” type clients but not for the type-only clients. "Customer”.
  • FIGS. 4a to 4c illustrate an exemplary code associated with the situation of FIG. 3.
  • the ⁇ node: path-select select "/ profile / displet / b"/> and ⁇ core: echo /> statements select the displet / b element and display this element, for the "Demo" profile.
  • Figure 4b by the "parent" node, there is a reference to the "guest” DOM containing the displet / b element.
  • the interpreter will thus construct the context by placing the information of the "Demo" profile (DOM of FIG. 4b) and adding the information of its "guest” parent profile (DOM of FIG. 4c).
  • each "displet" type node calls a java executable, which processes the information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a method of creating an application corresponding to a set of components, the execution of which produces a result that is adapted as a function of the use conditions of the application. The inventive method comprises the generation of a set of DOM-type XML documents containing the non-generic software of the application, the generic software being associated with Java classes that are linked to certain elements of the DOM documents. According to the invention, the wholly original method enables users simply to modify the application without having to recompile all of the executables.

Description

CREATION D'APPLICATIONS PERSONNALISABLES CREATING CUSTOMIZABLE APPLICATIONS
La présente invention se rapporte au domaine de la création d'applications informatiques, en particulier d'applications personnalisables.The present invention relates to the field of creating computer applications, in particular customizable applications.
La présente invention se rapporte plus particulièrement à un procédé pour créer des applications personnalisables dont l'affichage peut dépendre des conditions d'utilisation, de l'identité ou du profil de l'utilisateur.The present invention relates more particularly to a method for creating customizable applications whose display may depend on the conditions of use, the identity or the profile of the user.
Il est avantageux de personnaliser l'affichage des applications pour les différents utilisateurs. On peut par exemple désirer n'afficher qu'un premier contenu d'information pour un premier type de client, et afficher un second type d'information pour un second type de client. On peut également, pour un même contenu, vouloir faire varier l'affichage dudit contenu.It is advantageous to customize the display of applications for different users. For example, it may be desired to display only a first information content for a first type of client, and to display a second type of information for a second type of client. One can also, for the same content, want to vary the display of said content.
L'art antérieur avait déjà proposé une solution technique à ce problème de la personnalisation en proposant une architecture sous la forme d'une source d'informations structurées, telle qu'une base de données relationnelle ou XML, comprenant la définition et les données relatives aux informations de personnalisation, ainsi que les liens entre chaque type d'information (ex : profil, page, ...). Les différents composants applicatifs, par exemple de type java, permettent l'affichage des pages personnalisées par appel à une interface de programmation d'application (API), composée d'un ensemble de classes d'objets, qui encapsule l'accès à la source de données et la récupération des informations de personnalisation, lesquelles sont ensuite traitées et renvoyées aux composants applicatifs sous forme de résultat personnalisé. La figure 1 décrit une telle solution de l'art antérieur dans laquelle la personnalisation est réalisée par l'appel à des classes java contenant du code spécifique, à une source de données, par exemple de type base de données relationnelle. Cette base comprend des informations de personnalisation utilisées pour fournir un résultat personnalisé en fonction de l'utilisateur, A ou B.The prior art has already proposed a technical solution to this problem of personalization by proposing an architecture in the form of a source of structured information, such as a relational or XML database, including the definition and the relative data. personalization information, as well as the links between each type of information (eg profile, page, ...). The various application components, for example java type, allow the display of the personalized pages by call to an application programming interface (API), composed of a set of object classes, which encapsulates the access to the application. source and recovery of the personalization information, which is then processed and returned to application components as a customized result. FIG. 1 describes such a solution of the prior art in which the customization is carried out by the call to java classes containing specific code, to a data source, for example of the relational database type. This database includes customization information used to provide a customized result based on the user, A or B.
En fonctionnement, un composant applicatif par exemple un composant Web, appelle une classe Java à l'aide de paramètres associés à l'utilisateur A. Cette classe est éventuellement guidée par une classe Java ancêtre, qui encapsule la logique générique. La logique de la classe Java gère alors un ensemble de requêtes et de réponses de la part de la source de données contenant de l'information de personnalisation et traite cette information de façon à rendre un résultat personnalisé A.In operation, an application component, for example a Web component, calls a Java class using parameters associated with the user A. This class is possibly guided by an ancestor Java class, which encapsulates the generic logic. The logic of the Java class then handles a set of queries and responses from the data source containing personalization information and processes this information so as to render a personalized result A.
II est important de comprendre que dans ce type de configuration, les programmes java spécifiques et génériques faisant référence à l'interface de programmation d'application sont compilés, et l'ajout ou la modification d'un nouvel attribut de personnalisation dans la base nécessite d'une part la mise à jour et la migration des informations existantes, mais également la modification et recompilation du code java de l'API. Dans ce cas, il convient également de modifier et de recompiler tous les programmes qui utilisent l'API.It is important to understand that in this type of configuration, specific and generic java programs that reference the application programming interface are compiled, and adding or modifying a new customization attribute in the database requires on the one hand the update and the migration of existing information, but also the modification and recompilation of the java code of the API. In this case, you should also modify and recompile all programs that use the API.
Plus précisément, si l'on modifie la structure de la source de données, et qu l'on change les références entre les données, on doit également changer les classes Java contenant la logique non générique associée à ces informations pour prendre en compte les nouvelles information et donc de recompiler ces classes.More precisely, if we modify the structure of the data source, and we change the references between the data, we must also change the classes Java containing non-generic logic associated with this information to take into account the new information and thus to recompile these classes.
On comprend que cette contrainte constitue un inconvénient pour l'évolution de l'outil permettant de générer des applications personnalisables.It is understood that this constraint is a disadvantage for the evolution of the tool for generating customizable applications.
Cet inconvénient est résolu par le procédé et le programme d'ordinateur tel que revendiqué.This disadvantage is solved by the method and the computer program as claimed.
Selon l'invention, on fournit un procédé de création d'une application correspondant à un ensemble de composants, dont l'exécution fournit un résultat adapté en fonction des conditions d'utilisation de ladite application comprenant :According to the invention, there is provided a method for creating an application corresponding to a set of components, the execution of which provides a result adapted according to the conditions of use of said application comprising:
. une première étape préalable de création d'une application consistant à : - Définir un premier ensemble de documents XML dont les nœuds représentent lesdites conditions d'utilisation;. a first preliminary step of creating an application consisting in: defining a first set of XML documents whose nodes represent said conditions of use;
- Définir un second ensemble de documents XML dont les nœuds représentent les composants de ladite application;- Define a second set of XML documents whose nodes represent the components of said application;
- chacun desdits premiers et second ensemble comprenant des documents XML comprenant un premier type de nœud associé à un exécutable et un second type de nœud définissant une référence à un document XML dudit premier et second ensemble ; les documents du second ensemble comprenant un troisième type de nœud définissant une référence à un document XML du même second ensemble et représentant un composant de même type ;each of said first and second sets comprising XML documents comprising a first type of node associated with an executable and a second type of node defining a reference to an XML document of said first and second set; the documents of the second set comprising a third type of node defining a reference an XML document of the same second set and representing a component of the same type;
. Une seconde étape d'exécution de ladite application consistant à : - lire à l'aide d'un interpréteur, un document du second ensemble pour l ' interprétation de l'ensemble de ses nœuds et des nœuds des documents référencés desdits premiers et second ensemble, l'interprétation de chaque nœud du premier type permettant les exécutions desdits exécutables associés ;. A second step of executing said application consisting in: reading with the help of an interpreter, a document of the second set for the interpretation of all of its nodes and the nodes of the referenced documents of said first and second set the interpretation of each node of the first type allowing executions of said associated executables;
Stocker, dans un contexte applicatif, les résultats desdites exécutions desdits exécutables; - Renvoyer le contenu dudit contexte applicatif.Storing, in an application context, the results of said executions of said executables; - Return the content of said application context.
L'invention concerne également un programme d'ordinateur, éventuellement stocké sur un support de données, pour la mise en œuvre du procédé selon l'invention.The invention also relates to a computer program, possibly stored on a data carrier, for implementing the method according to the invention.
Selon l'invention, l'ensemble de la logique spécifique qui était présente dans des classes Java compilées selon l'art antérieur est maintenant obtenue sous forme de DOM (Document Object Model) réalisant donc un programme de type XML.According to the invention, the set of specific logic that was present in Java classes compiled according to the prior art is now obtained in the form of a DOM (Document Object Model) thus realizing a program of XML type.
On comprendra mieux l'invention à l'aide de la description, faite ci-après à titre purement explicatif, d'un mode de réalisation de l'invention, en référence aux figures annexées : la figure 1 illustre le procédé et l'architecture de personnalisation selon l'art antérieur; la figure 2 illustre le procédé et l'architecture de personnalisation selon l'invention. La figure 3 représente un exemple spécifique de DOM de personnalisation selon l'invention.The invention will be better understood from the following description, given purely for explanatory purposes, of one embodiment of the invention, with reference to the appended figures: FIG. 1 illustrates the method and personalization architecture according to the prior art; FIG. 2 illustrates the method and the customization architecture according to the invention. FIG. 3 represents a specific example of personalization DOM according to the invention.
Les figures 4a à 4c correspondent à un exemple de code XML pour la mise en œuvre de la présente invention.FIGS. 4a to 4c correspond to an exemplary XML code for the implementation of the present invention.
Illustré figure 2, selon l'invention, on définit un ensemble de DOM A ayant comme nœuds les éléments correspondant aux informations de présentation. Ce DOM A comprend donc des éléments qui représentent la logique non générique pour les informations de personnalisation INFO qu'il définit.Illustrated in FIG. 2, according to the invention, a set of DOM A is defined having as nodes the elements corresponding to the presentation information. This DOM A therefore comprises elements that represent the non-generic logic for the INFO personalization information that it defines.
On note tout d'abord que dans toute la suite, la notion d'héritage est employée dans son sens connu par l'homme du métier dans le domaine de la programmation, tel que par exemple un héritage de classes d'objets (ex : java) .First of all, it should be noted that throughout the following, the notion of inheritance is used in the sense known to those skilled in the field of programming, such as, for example, an inheritance of object classes (ex: java).
Ce premier DOM A donc hérite d'un second type deThis first DOM has thus inherited a second type of
DOM B. Chaque élément du DOM A comprend donc soit l'ensemble de l'information de personnalisation nécessaire à la personnalisation, soit une partie seulement de celle- ci, le complément d'information étant contenu dans le DOM B dont il hérite.DOM B. Each element of the DOM A thus comprises either all of the personalization information necessary for personalization, or only part of it, the information complement being contained in the DOM B which it inherits.
Par ailleurs, les éléments du DOM A peuvent faire référence à d'autres DOM C au sens de la référence XML afin de compléter les éléments d'information nécessaires à la personnalisation.In addition, DOM A elements may refer to other C DOMs in the sense of the reference XML to complete the information elements necessary for customization.
Chaque type d'élément représentant les nœuds des DOM selon l'invention fait référence à une classe Java contenant une logique générique. Un interpréteur spécifique interprète alors les éléments pour appeler la bonne classe Java.Each type of element representing the nodes of the DOMs according to the invention refers to a Java class containing a generic logic. A specific interpreter then interprets the elements to call the correct Java class.
On comprend donc facilement que cette structure de données permet, lorsque l'on désire modifier des attributs de personnalisation, de ne pas recompiler de Classe Java comprend du code non générique, mais simplement de rajouter un DOM ou un élément référençant un DOM qui incorpore l'information à ajouter.It is therefore easy to understand that this data structure makes it possible, when it is desired to modify personalization attributes, not to recompile a Java class that includes non-generic code, but simply to add a DOM or an element referencing a DOM that incorporates the code. information to add.
On décrit maintenant plus spécifiquement l'invention dans le cadre d'un profil comme illustré figure 3. Le DOM référencé 1 comprend un élémentThe invention is now more specifically described in the context of a profile as illustrated in FIG. 3. The DOM referenced 1 comprises an element
« Présentation Space » la correspondant aux différentes informations de présentation d'une page. Ce DOM 1 comprend un élément « Profile » Ib qui fait référence à un DOM référencé 2 comprenant un élément de type « Profile » 2a, de nom « Customer » 2b. Ce profil correspond par exemple au type de client par défaut."Space Presentation" the corresponding to the different information of presentation of a page. This DOM 1 comprises a "Profile" element Ib which refers to a referenced DOM 2 comprising a "Profile" element 2a, named "Customer" 2b. This profile corresponds for example to the type of client by default.
Lors de la connexion d'un client de type « Customer », et au moment de l'interprétation des DOM, la référence entre les DOM 1 et 2 permet l'appel pour ce type de client, des éléments de type « displet » Id, le, If et l'affichage des displets « Displet 1 » et « Displet 2 » tels que définis dans le DOM 1. Cet affichage est réalisé par exécution d'une classe java associée par exemple aux éléments de type « présentation Object » 6c de l'élément Displet βa du DOM 6.When connecting a customer of type "Customer", and at the time of the interpretation of the DOM, the reference between the DOM 1 and 2 allows the call for this type of client, elements of the type "displet" Id , the If, and the display of the displets "Displet 1" and "Displet 2" as defined in the DOM 1. This display is realized by execution of a java class associated for example with the "Object presentation" elements 6c of the Displet βa element of the DOM 6.
Si l'on définit cette fois un type de client particulier de type « GoId » , en créant un nouveau DOM 3 comprenant un élément 3b de type « Profile » de nomIf we define this time a particular type of customer of type "GoId", by creating a new DOM 3 including a 3b element of the type "Profile" of name
« GoId », et que l'on désire associé à ce type de client un affichage spécifique d'un displet « Displet 3 »."GoId", and that it is desired associated with this type of client a specific display of a displet "Displet 3".
Dans ce cas, on crée un autre DOM 4 comprenant un élément de type « Présentation space » 4a qui d'une part hérite du DOM 1 afin d'afficher également pour le client « GoId » les displets 1 et 2, et qui d'autre part comprend un élément de type « Profile » 4b qui référence le DOM 3. De la sorte, à l'interprétation, la displet « Displet 3 » sera affichée pour les clients de type « GoId » mais pas pour les clients seulement de type « Customer » .In this case, another DOM 4 is created comprising a "presentation space" type element 4a which on the one hand inherits the DOM 1 in order to also display for the client "GoId" the displets 1 and 2, and which of On the other hand, there is a "Profile" element 4b that references the DOM 3. In this way, the displet "Displet 3" will be displayed for "GoId" type clients but not for the type-only clients. "Customer".
On comprend donc de la sorte que pour ajouter un profil avec des attributs particuliers, il n'est pas nécessaire de modifier la structure d'information relatives aux profils et de recompiler les classes existantes, mais simplement de créer un nouveau DOM héritant de DOM existants pour le type de modification à effectuer, et référençant un nouveau profil correspondant au profil à ajouter.So we understand that to add a profile with particular attributes, it is not necessary to modify the profile information structure and recompile the existing classes, but simply to create a new DOM inheriting from existing DOMs for the type of modification to be performed, and referencing a new profile corresponding to the profile to be added.
Les figures 4a à 4c illustrent un exemple de code associé à la situation de la figure 3. La figure 4a correspond à un composant applicatif de type DOM, qui affecte le profil appelé « Démo » à l'utilisateur courant, et donc, selon l'invention, fait référence au DOM « démo » de la figure 4b, par l'instruction <node:push src="profiles:demo"/> • On recherche ensuite la valeur de l'élément de displet b pour le profil « Démo ». L'instruction <node:push src≈"profiles:démo"/>, met dans le contexte les informations relatives au profil « Démo » . Les instructions <node:path-select select="/profile/displet/b"/> et <core:echo/> sélectionnent l'élément displet/b et affichent cet élément, pour le profil « Démo ».FIGS. 4a to 4c illustrate an exemplary code associated with the situation of FIG. 3. FIG. 4a corresponds to a DOM type application component, which assigns the profile called "Demo" to the current user, and therefore, according to FIG. invention, refers to the DOM "demo" of Figure 4b, by the instruction <node: push src = "profiles: demo"/> • The value of the displet element b is then searched for the "Demo" profile. The <node: push src≈ "profiles: demo"/> statement puts the information about the "Demo" profile in context. The <node: path-select select = "/ profile / displet / b"/> and <core: echo /> statements select the displet / b element and display this element, for the "Demo" profile.
Figure 4b, par le nœud « parent », il existe une référence au DOM « guest » contenant l'élément displet/b. L'interpréteur va donc construire le contexte en plaçant les informations du profil « Démo » (DOM de la figure 4b) et y ajouter les informations de son profil parent « guest » (DOM de la figure 4c).Figure 4b, by the "parent" node, there is a reference to the "guest" DOM containing the displet / b element. The interpreter will thus construct the context by placing the information of the "Demo" profile (DOM of FIG. 4b) and adding the information of its "guest" parent profile (DOM of FIG. 4c).
Dans les DOM des figures 4a à 4c, chaque nœud de type « displet » appelle un exécutable java, gui traite 1 ' information.In the DOMs of FIGS. 4a to 4c, each "displet" type node calls a java executable, which processes the information.
L'homme du métier comprendra dans cet exemple l'avantage de la présente invention. En effet, si l'on désire ajouter un profil « Demo2 », il suffit de créer le DOM « demo2 » et de modifier les références dans le DOM initial de la figure 4a, sans modifier la classe java associée.Those skilled in the art will understand in this example the advantage of the present invention. Indeed, if one wishes to add a profile "Demo2", it is enough to create the DOM "demo2" and to modify the references in the initial DOM of figure 4a, without modifying the associated class java.
L'invention est décrite dans ce qui précède à titre d'exemple. Il est entendu que l'homme du métier est à même de réaliser différentes variantes de l'invention sans pour autant sortir du cadre du brevet. The invention is described in the foregoing by way of example. It is understood that the skilled person is able to realize different variants of the invention without departing from the scope of the patent.

Claims

REVENDICATIONS
1. Procédé de création d'une application correspondant à un ensemble de composants, dont l'exécution fournit un résultat adapté en fonction des conditions d'utilisation de ladite application comprenant :A method of creating an application corresponding to a set of components, the execution of which provides a result adapted according to the conditions of use of said application comprising:
. une première étape préalable de création d'une application consistant à :. a first preliminary step of creating an application consisting of:
- Définir un premier ensemble (2,3) de documents XML dont les nœuds (2a, 3&) représentent lesdites conditions d'utilisation;- Define a first set (2,3) of XML documents whose nodes (2a, 3 &) represent said conditions of use;
- Définir un second ensemble (1, 4, 6, 5) de documents XML dont les nœuds représentent les composants de ladite application; chacun desdits premiers et second ensemble comprenant des documents XML comprenant un premier type de nœud (6c, 5c) associé à un exécutable et un second type de nœud (Ib, 4b) définissant une référence à un document XML dudit premier et second ensemble ; les documents du second ensemble comprenant un troisième type de nœud (4a) définissant une référence à un document XML du même second ensemble et représentant un composant de même type ;- Define a second set (1, 4, 6, 5) of XML documents whose nodes represent the components of said application; each of said first and second sets comprising XML documents comprising a first type of node (6c, 5c) associated with an executable and a second type of node (Ib, 4b) defining a reference to an XML document of said first and second set; the documents of the second set comprising a third type of node (4a) defining a reference to an XML document of the same second set and representing a component of the same type;
. Une seconde étape d'exécution de ladite application consistant à : - lire à l'aide d'un interpréteur, un document du second ensemble pour l ' interprétation de l'ensemble de ses nœuds et des nœuds des documents référencés desdits premiers et second ensemble, l'interprétation de chaque nœud du premier type (5c, 6c) permettant les exécutions desdits exécutables associés ;. A second step of executing said application consists in: reading with an interpreter, a document of the second set for the interpretation of all of its nodes and the nodes of the referenced documents of said first and second together, the interpretation of each node of the first type (5c, 6c) allowing the executions of said associated executables;
- Stocker, dans un contexte applicatif, les résultats desdites exécutions desdits exécutables;- Store, in an application context, the results of said executions of said executables;
- Renvoyer le contenu dudit contexte applicatif.- Return the content of said application context.
2. Procédé selon la revendication 1, caractérisé en ce que ledit exécutable est une classe Java.2. Method according to claim 1, characterized in that said executable is a Java class.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que ladite exécution est réalisée sur un serveur.3. Method according to claim 1 or 2, characterized in that said execution is performed on a server.
4. Procédé selon la revendication 1 ou 2, caractérisé en ce que ladite exécution est réalisée sur un poste client.4. Method according to claim 1 or 2, characterized in that said execution is performed on a client station.
5. Procédé selon la revendication 1, caractérisé en ce que lesdites conditions d'utilisation correspondent à un profil d'un utilisateur.5. Method according to claim 1, characterized in that said conditions of use correspond to a profile of a user.
6. Programme d'ordinateur caractérisé en ce qu'il comprend un ensemble d'instructions pour la mise en œuvre du procédé selon l'une quelconque des revendications 1 à 5. 6. Computer program characterized in that it comprises a set of instructions for the implementation of the method according to any one of claims 1 to 5.
EP06764574A 2005-05-02 2006-04-28 Method of creating customisable applications Withdrawn EP1877898A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0504449A FR2885242B1 (en) 2005-05-02 2005-05-02 CREATING CUSTOMIZABLE APPLICATIONS
PCT/FR2006/000969 WO2006117467A1 (en) 2005-05-02 2006-04-28 Method of creating customisable applications

Publications (1)

Publication Number Publication Date
EP1877898A1 true EP1877898A1 (en) 2008-01-16

Family

ID=35455290

Family Applications (1)

Application Number Title Priority Date Filing Date
EP06764574A Withdrawn EP1877898A1 (en) 2005-05-02 2006-04-28 Method of creating customisable applications

Country Status (4)

Country Link
US (1) US20060248097A1 (en)
EP (1) EP1877898A1 (en)
FR (1) FR2885242B1 (en)
WO (1) WO2006117467A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2405726A (en) * 2003-09-03 2005-03-09 Business Integrity Ltd Mark-up of automated documents
GB2434669A (en) * 2006-01-30 2007-08-01 Business Integrity Ltd Debugging a master document used in a document generation system
US7987457B2 (en) * 2007-06-25 2011-07-26 Microsoft Corporation Targeted patching for native generation images
US20150205884A1 (en) * 2014-01-22 2015-07-23 AI Squared Emphasizing a portion of the visible content elements of a markup language document

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6083276A (en) * 1998-06-11 2000-07-04 Corel, Inc. Creating and configuring component-based applications using a text-based descriptive attribute grammar
WO2002023336A1 (en) * 2000-09-14 2002-03-21 Bea Systems, Inc. Xml-based graphical user interface application development toolkit
US6845499B2 (en) * 2001-01-31 2005-01-18 I2 Technologies Us, Inc. System and method for developing software applications using an extended XML-based framework
US20040031015A1 (en) * 2001-05-24 2004-02-12 Conexant Systems, Inc. System and method for manipulation of software
US7007266B1 (en) * 2002-01-08 2006-02-28 Quovadx, Inc. Method and software system for modularizing software components for business transaction applications
WO2005006187A1 (en) * 2003-07-10 2005-01-20 Koninklijke Philips Electronics N.V. A method of dynamically changing a software design
US20050229152A1 (en) * 2004-04-08 2005-10-13 Brian Connell Integrated modeling environment
US7657868B2 (en) * 2005-03-14 2010-02-02 Research In Motion Limited System and method for applying development patterns for component based applications
US7941784B2 (en) * 2005-03-14 2011-05-10 Research In Motion Limited System and method for generating component based applications

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2006117467A1 *

Also Published As

Publication number Publication date
WO2006117467A1 (en) 2006-11-09
FR2885242B1 (en) 2007-07-20
US20060248097A1 (en) 2006-11-02
FR2885242A1 (en) 2006-11-03

Similar Documents

Publication Publication Date Title
US10740121B2 (en) User interface for navigating multiple applications
US7802230B1 (en) Heterogeneous software integration systems and methods
Gronback Eclipse modeling project: a domain-specific language (DSL) toolkit
KR101247061B1 (en) System and method for providing a consistent visual appearance to output generated by multiple applications
US9026948B2 (en) Multi-faceted relationship hubs
US6061696A (en) Generating multimedia documents
EP1880325A1 (en) Dynamic method for generating xml documents from a database
Sanderson Pro Asp. net MVC 2 Framework
JPH08511118A (en) Container object system
Freeman Pro Angular
JPH08511117A (en) Place object system
FR2826753A1 (en) Processing of an Extended Markup Language XML document in an Internet network, in which user selects a markup language and a list of its functions is displayed and XML document is associated with Schema XML language
EP1877898A1 (en) Method of creating customisable applications
Freeman Pro Angular 9: build powerful and dynamic web apps
FR2785412A1 (en) DYNAMIC CREATION OF CLASSES OF OBJECTS
Klein Pro Entity Framework 4.0
EP2219113A2 (en) Display method, corresponding device and computer program product
FR3018368A1 (en) METHOD AND DEVICE FOR MANAGING AMBIGUITS IN SOURCE CODE ANALYSIS
EP1280074A1 (en) Use of hyperlinks in a computer program for an automation application and programmed computer for such an application
Belagali et al. Kotlin Blueprints: A practical guide to building industry-grade web, mobile, and desktop applications in Kotlin using frameworks such as Spring Boot and Node. js
FR2906382A1 (en) METHODS AND DEVICES FOR OPTIMIZING XML PROCESSING
Bazelli et al. WL++: a framework to build cross-platform mobile applications and RESTful back-ends
Rossi et al. Object-oriented Web applications modeling
FR2643734A1 (en) METHOD FOR MANAGING FILES FOR A COMPUTER SYSTEM, AND SYSTEM MODULE FOR IMPLEMENTING SAID METHOD
FR2853974A1 (en) METHOD FOR GENERATING A REMOTE COMMUNICATION INTERFACE FOR INFORMATION BASED ON A RESOURCE DESCRIPTION FRAMEWORK (RDF)

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: 20071030

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20090821

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: 20091103