FR2811101A1 - Procede de traitement de donnees structurees utilisant un langage informatique oriente objet - Google Patents
Procede de traitement de donnees structurees utilisant un langage informatique oriente objet Download PDFInfo
- Publication number
- FR2811101A1 FR2811101A1 FR0008631A FR0008631A FR2811101A1 FR 2811101 A1 FR2811101 A1 FR 2811101A1 FR 0008631 A FR0008631 A FR 0008631A FR 0008631 A FR0008631 A FR 0008631A FR 2811101 A1 FR2811101 A1 FR 2811101A1
- Authority
- FR
- France
- Prior art keywords
- data
- name
- value
- dictionary
- container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/4493—Object persistence
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Abstract
Le procédé de traitement de données, comprend les étapes suivantes : a) recevoir un jeu de données à traiter, structurées et reliées entre elles, de type valeur ayant un nom et/ ou contenant ayant un nom et aptes à contenir au moins une valeur ayant un nom et/ ou au moins un autre contenant ayant un nom; b) définir un objet dictionnaire apte à stocker/ trouver dans un espace mémoire un contenant ou une valeur sous/ correspondant à un nom prédéterminé; c) créer une instance vide de l'objet dictionnaire; d) vérifier si la structure de la donnée à traiter est du type valeur ou contenant; e) en cas de donnée de type valeur, stocker/ trouver la valeur dans l'espace mémoire sous/ correspondant au nom de la donnée à traiter, et revenir à l'étape d) jusqu'à la dernière donnée à traiter dudit jeu tandis qu'en cas de donnée de type contenant, créer un sous objet dictionnaire vide conformément à l'étape c), remplir ledit sous objet dictionnaire par le contenu de la donnée à traiter conformément aux étapes d) à e), et revenir à l'étape d) jusqu'à traiter la dernière donnée du jeu.
Description
Procédé de traitement de données structurées utilisant un langage
informatique orienté objet La présente invention concerne le traitement de données
structurées utilisant un langage informatique orienté objet.
Elle trouve une application générale dans la modélisation informatique de données, la visualisation de données et la
construction d'applications informatiques client-serveur.
On connaît déjà des procédés de traitement de données permettant de gérer des données structurées ou hiérarchiques, dont le niveau le plus bas est par exemple un document
(texte, image, son, etc.).
Par exemple, on connait un procédé qui permet le lien, via un serveur d'application, entre des pages émanant ou transitant par le réseau Internet, appelées encore pages sur la toile ou " pages web ", et une base de données. Dans ce genre de procédé, les champs ou variables utilisables au niveau des pages web doivent faire référence à des champs décrits dans
le schéma de la base de données utilisée.
Un tel procédé a l'inconvénient de limiter la structuration des données à un schéma figé déterminé à l'avance. De plus, aucune capacité d'apprentissage n'est possible avec ce procédé. Il en résulte que la mise à jour du schéma des données implique une modification conjointe de la base de données et des modèles de page, ce qui alourdit, ralentit et
complexifie cette mise à jour.
On connaît aussi un procédé utilisant un langage orienté objet et permettant l'échange de données entre des pages(ou formulaires) web et une base de données. Dans ce genre de
procédé, la base de données est généralement de type rela-
tionnelle, ce qui exclut toute possibilité d'apprentissage.
De plus, la correspondance entre les données des pages et les objets se fait en utilisant des champs définis par la classe d'objet. Ainsi, une donnée qui ne correspond pas à un champ de la classe d'objet ne peut être géré dans un modèle de page. La présente invention remédie à ces inconvénients. Elle porte sur un traitement de données structurées utilisant
un langage informatique orienté objet.
Selon une définition générale du procédé selon l'invention, le procédé comprend les étapes suivantes: a) recevoir un jeu de données à traiter, structurées et reliées entre elles, de type valeur ayant un nom et/ou contenant ayant un nom et apte à contenir au moins une valeur ayant un nom et/ou au moins un autre contenant ayant un nom; b) définir un objet dictionnaire apte à stocker/trouver dans
un espace mémoire un contenant ou une valeur sous/correspon-
dant à un nom prédéterminé; c) créer une instance vide de l'objet dictionnaire; d) vérifier si la structure de la donnée à traiter est du type valeur ou contenant; e) en cas de donnée de type valeur, stocker/trouver la valeur dans l'espace mémoire sous/correspondant au nom de la donnée à traiter, et revenir à l'étape d) jusqu'à traiter la dernière donnée dudit jeu; f) tandis qu'en cas de donnée de type contenant, créer un sous objet dictionnaire vide conformément à l'étape c) , remplir ledit sous objet dictionnaire par le contenu de la donnée à traiter conformément aux étapes d) à f), et revenir
à l'étape d) jusqu'à traiter la dernière donnée du jeu.
L'apport du procédé selon l'invention est de permettre une
génération d'applications extrêmement rapides et une struc-
ture des données orientées objets totalement souple.
Par exemple, lorsque le procédé selon l'invention est appliqué au stockage de données dans une base de données, le procédé selon l'invention comprend les étapes suivantes: 1) prévoir une base de données; 2) recevoir un jeu de données rangées selon une structure hiérarchique du type valeur ayant un nom et/ou contenant ayant un nom et apte à contenir au moins une valeur et/ou au moins un autre contenant ayant un nom; 3) prévoir une instance de base de donnée remplie d'un objet dictionnaire; 4) en cas de donnée de type valeur, stocker ou remplacer la valeur sous son nom dans l'objet dictionnaire; ) en cas de donnée de type contenant, vérifier s'il existe un objet dictionnaire sous le nom de la donnée à traiter; 6) dans l'affirmative, remplir l'objet dictionnaire par le contenu de la donnée et revenir à l'étape 4) jusqu'à traiter la dernière donnée du jeu tandis que dans la négative, créer un sous-objet dictionnaire vide et remplir le sous-objet dictionnaire par le contenu de la donnée à traiter et revenir
à l'étape 4) jusqu'à traiter la dernière donnée du jeu.
En pratique, les données à traiter sont reçues sous la forme d'objet dictionnaire afin d'être rangées en série les unes à la suite des autres dans un espace de stockage choisi. Dans ce cas, le procédé selon l'invention comprend les étapes suivantes: I) recevoir un objet dictionnaire rempli d'au moins une donnée à stocker dans un espace de stockage choisi; II) pour chaque nom de valeur et/ou contenant stocké dans l'objet dictionnaire, analyser la structure des données contenues dans l'objet dictionnaire sous ce nom; III) en cas de donnée de type valeur, écrire dans l'espace de stockage choisi le nom de la valeur suivi d'un marqueur de valeur et de la valeur elle-même tandis qu'en cas de donnée de type contenant, écrire, dans l'espace de stockage choisi, un marqueur de contenant, le nom du contenant, un marqueur de valeur, et le contenu de la donnée à traiter et un marqueur
de fin de contenant.
Selon un autre mode préféré de mise en ouvre du procédé selon l'invention, l'objet dictionnaire est capable de stocker en
outre au moins une méthode de calcul sous un nom prédétermi-
né, et à trouver comme valeur sous ce nom, le résultat de la
méthode de calcul associée.
Par exemple, les données à traiter émanent d'un formulaire ou page dans lequel les données sont structurées et reliées entre elles avec des données de type valeur ayant un nom et/ou contenant ayant un nom et apte à contenir une valeur ou
un contenant ayant un nom.
D'autres caractéristiques et avantages de l'invention
apparaîtront à la lumière de la description détaillée ci-
après des dessins dans lesquels: - la figure 1 est un organigramme illustrant les étapes générales du procédé selon l'invention; - la figure 2 est un organigramme illustrant le procédé de l'invention dans la phase stockage de données dans une base de données; et - la figure 3 est un organigramme illustrant le procédé de
persistance d'une base de données selon l'invention.
La présente invention décrit un mécanisme générique d'encap-
sulation de données adapté à toute structure de données. Le mécanisme d'encapsulation selon l'invention utilise un objet
de base appelé ci-après objet dictionnaire.
On entend ici par objet dictionnaire, un objet qui permet de traiter (stocker et/ou trouver) une donnée de type valeur ayant un nom ou contenant ayant un nom, (le contenant étant apte à contenir lui même au moins une valeur ayant un nom ou
au moins un autre contenant ayant un nom).
La fonction de base d'un objet dictionnaire est par consé-
quent de stocker dans un espace mémoire un contenant ou une valeur sous un nom prédéterminé et aussi de trouver dans un espace mémoire ledit contenant ou ladite valeur correspondant
à un nom prédéterminé.
La structure d'un objet dictionnaire est simple. La classe d'objets dictionnaires contient un tableau des noms des contenants et des valeurs. La classe d'objets dictionnaires comprend aussi un tableau des contenants et des valeurs étiquetés, c'est-à-dire rangés selon un index correspondant
à celui des noms desdits contenants ou valeurs.
Par exemple, les techniques dites de hachage, telles que celles appelées "hastable" en langage JAVA, ou celles décrites dans l'ouvrage "The art of computer programming, Vol 1-3 boxed set HBK, de Donald E. KNUTH, 1999", permettent de
réaliser des objets dictionnaires.
Dans l'art antérieur, la plupart des procédés d'encapsulation de données supposent que les objets possèdent une structure prédéfinie et qu'on dispose d'une connaissance précise de la structure des données. Le procédé d'encapsulation est généralement capable de traiter les données dont la structure correspond à celle de l'objet. Par exemple, une donnée ayant
une structure nom, prénom, et date de naissance, est convena-
blement traitée si l'objet " personne " a pour variables nom, prénom, et date de naissance. Par contre, la donnée "adresse" n'est pas traitée si la structure de l'objet "
personne " ne comprend par ce type de variable.
Le procédé selon l'invention permet justement d'encapsuler des données dont la structure n'est pas connue a priori. Dans l'exemple mentionné ciavant, l'objet dictionnaire DIC1, selon l'invention, stocke la valeur "Dupont" dans la variable ayant pour nom "nom", stocke la valeur "Paul" dans la variable ayant pour nom "prénom" et stocke un objet
dictionnaire DIC2 sous le nom "adresse".
Selon l'invention, l'objet dictionnaire DIC2 est alors capable de stocker la valeur "3, allée des Violettes" dans la variable ayant pour nom "rue"; stocke la valeur "Paris" sous le nom "ville"; et stocke la valeur "75012" sous le nom "code-postal". En référence à la figure 1, le procédé de traitement de
données selon l'invention peut être résumé sous l'organi-
gramme suivant: - recevoir un jeu de données structurées selon une hiérarchie et reliées entre elles, la structure étant du type valeur ayant un nom et/ou contenant ayant un nom et apte à contenir une valeur et/ou un autre contenant ayant un nom (étape 10); - définir un objet dictionnaire apte à stocker/ trouver un
contenant ou une valeur dans un espace mémoire sous/corres-
pondant à un nom prédéterminé (étape 12); - créer une instance vide de l'objet dictionnaire (étape 14); - vérifier si la structure de la donnée à traiter est du type contenant ou valeur (étape 16);
- en cas de donnée de type valeur (étape 18), stocker/-
trouver la valeur sous son nom (étape 20) tandis qu'en cas de donnée de type contenant (étape 22), créer un sous-objet dictionnaire vide (étape 24) conformément à l'étape 14, remplir ledit sous-objet dictionnaire par le contenu de la donnée (étape 26) conformément aux étapes 16 à 32, et revenir à l'étape 16 jusqu'à traiter la dernière donnée dudit jeu
(étapes 28, 30 et 32).
Avantageusement, le procédé selon l'invention permet en outre d'ajouter aux données d'autres variables dont les valeurs ne
sont pas présentes dans les objets ou contenants.
Ainsi dans l'exemple mentionné ci-avant, l'objet ou contenant "personne" peut stocker la valeur "date de naissance" et être encapsulé dans un contenant "personne" qui est capable d'afficher en outre l'âge selon une méthode de calcul appropriée. Avantageusement, l'invention permet de traiter ces variables dont les valeurs sont issues de méthodes de calcul. Ces valeurs sont avantageusement rangées selon l'invention au moyen d'un objet dictionnaire permettant d'associer le nom d'une valeur et la méthode de calcul utilisée pour fournir la
valeur.
Plus précisément, après réception d'un nom de valeur, il est vérifié si ce nom de valeur est associé à une méthode de calcul dans l'objet dictionnaire. En présence d'une méthode associée, il est prévu de calculer la valeur selon la méthode de calcul associée et d'obtenir ainsi un résultat. Dans la
négative, il est prévu de rechercher dans l'objet diction-
naire des données formant résultat et de délivrer le résultat correspondant.
Le procédé selon l'invention trouve plusieurs applications.
L'une d'elles consiste à introduire dans une base de données de nouvelles données dont la structure n'est pas connue a priori.
Par exemple, les données sont saisies dans des pages d'inter-
face utilisateur, appelées formulaires ou pages de saisie.
La présente invention propose un formalisme permettant de nommer chaque champ ou variable du formulaire de façon à générer des données autostructurées pouvant être persistées (mises à jour) dans un espace de stockage choisi (base de
données par exemple).
Le formalisme consiste par exemple à nommer chaque champ du formulaire de la façon suivante: nom d'objet / nom de sous-objet 1 /... / nom de sousobjet n
/ nom de valeur.
Les objets et sous-objets sont ici des contenants ayant un nom. Il est à remarquer que la barre oblique / est un séparateur arbitraire qui peut être remplacé par tout autre caractère arbitraire. On peut aussi prévoir des marqueurs de fin de contenant et/ou
de fin de valeur.
certaines variables (contenant et/ou valeur) peuvent être vides. Ce formalisme permet, lorsque les données et noms de champs sont envoyés à un serveur d'application, de générer des objets (contenants) correspondants à la structure de données désirée. Par exemple, un formulaire comportant les champs et valeurs suivants:
- PERSONNE/NOM DUPONT
- PERSONNE/PRENOM Jean PERSONNE/VOITURE/MARQUE Ford PERSONNE/VOITURE/MODELE Escort Un tel formulaire permet de générer l'objet suivant: Objet dictionnaire Dic 1, de type dictionnaire stocke la valeur "Dupont" sous le nom de champ "nom", stocke la valeur "Jean" sous le nom de champ "prénom" et stocke un objet dictionnaire, Dic 2, de type dictionnaire, sous le nom de
champ "voiture".
L'objet dictionnaire DIC2, de type dictionnaire stocke alors la valeur "Ford" sous le nom de champ "marque" et aussi la
valeur "Escort" sous le nom de champ "modèle".
On a représenté en figure 2 un organigramme qui illustre la
procédure de stockage d'une valeur selon l'invention.
Selon l'étape 100, on prévoit ou on reçoit un objet diction-
naire DIC1, un nom de champ (étape 102) et la valeur attri-
buée correspondante (étape 104).
A l'issue des étapes 100, 102 et 104, on peut passer au stoc-
kage de la valeur (étape 106).
Pour chaque nom de champ, on analyse la structure des données contenues dans ledit champ sous ce nom (étape 108). En pratique, on vérifie si le nom de champ contient la barre
oblique < / ".
Si le nom de champ ne contient pas le caractère séparateur arbitraire, (ici barre oblique), on stocke la valeur sous le
nom " Nom de champ " dans l'objet dictionnaire (étape 110).
En effet, à ce stade, la donnée est du type variable simple, c'est-à-dire du type donnée contenant seulement une valeur
sous un nom.
En revanche, si le nom de champ contient le séparateur arbitraire, cela signifie que la donnée est du type <
contenant " propre à contenir un autre objet ou sous-objet.
On extrait alors le nom de ce champ (étape 112) et on vérifie si un sousobjet existe dans l'objet dictionnaire sous ce nom
(étape 114).
Dans l'affirmative, on obtient le sous-objet du dictionnaire (étape 116) et on modifie le nom de champ (étape 124) en supprimant la partie précédant le séparateur 1"/", ainsi que
le séparateur lui-même (étape 118).
En revanche, s'il n'existe pas de sous-objet dans l'objet dictionnaire, on prévoit de créer un sous-objet (étape 120)
et on le stocke dans l'objet dictionnaire.
Lorsque le sous-objet est ainsi créé (étape 122), il est prévu de modifier le nom de champ (étape 124) en supprimant
la partie précédant le séparateur "/1", ainsi que le sépara-
teur lui-même (conformément à l'étape 118 mentionnée ci-
avant). A l'issue du procédé, on dispose ainsi d'un sous-objet (étape 126) , d'un nom de champ modifié (étape 124) et d'une valeur correspondante (étape 128), ce qui permet de stocker la valeur (étape 130), par itération du procédé conformément aux
étapes 108 à 130.
Si l'on utilise l'exemple mentionné ci-avant à l'organigramme
de la figure 2, on dispose d'un objet dictionnaire correspon-
dant à la description d'une personne avec des noms de champ
"NOM", "PRENOM" et des valeurs "DUPONT" et "JEAN".
Cet objet dictionnaire comprend également un contenant "VOITURE" stockant la valeur "FORD" sous le nom de champ
"MARQUE".
Selon les étapes 108 à 110, la valeur "JEAN" est stockée dans
le nom de champ "PRENOM".
Selon les étapes 108, 112, 114, 116, 118, 124, 126, 128, 130, puis 108 à 110, la valeur "ESCORT" est stockée dans le nom de
champ "VOITURE/MODELE".
Enfin, selon les étapes 108, 112, 114, 120, 122, 118, 124, 126, 128, 130, puis 108 à 110, la valeur "PARIS" est stocké
dans le nom de champ "ADRESSE/VILLE".
En référence à la figure 3, la présente invention a également pour objet un procédé de persistance (mise à jour) des données d'un objet dictionnaire encapsulé comme décrit précédemment. A partir d'un objet dictionnaire dit "logiciel", c'est-à-dire résultant d'une encapsulation telle que celle décrite précédemment (étape 200) et d'un objet base de données, dit "statique", c'est-à-dire non encapsulé (étape 202), la procédure " persister objet logiciel " est prête à débuter
(étape 204).
Le procédé prévoit d'analyser le contenu (ici chaque nom) de
l'objet dictionnaire à traiter (étapes 206 et 208).
En présence d'un nom, on passe à l'étape de traitement suivante (étape 212), sinon on met fin au procédé (étape 210) Si le nom correspond à une variable simple, la valeur de la variable est persistée (mise à jour) dans la base de données (étape 214), conformément à des méthodes de stockage qui ne
font pas l'objet de la présente invention.
En revanche, si la donnée est du type " contenant ", on vérifie s'il y a un sous-objet statique dans la base de
données possédant ce nom (étape 216).
Dans l'affirmative, il est recherché dans la base de données, un sousobjet statique correspondant à ce nom (étape 218), tandis qu'en l'absence de sous-objet statique dans la base de données sous ce nom, il est prévu de créer un sous-objet
statique avec ce nom dans la base de données (étape 220).
A l'issue des étapes 218 ou 220, on dispose d'un sous-objet statique, et on obtient le sous-objet logiciel de l'objet dictionnaire correspondant (étape 224), ledit sous-objet étant encapsulé conformément au procédé d'encapsulation selon l'invention. A l'issue de l'étape 224, on dispose ainsi d'un sous objet logiciel (étape 226), homologue de l'objet logiciel défini à l'étape 200, et d'un sous objet statique (étape 228), issu de la base de données, homologue de l'objet statique défini à
l'étape 202.
Avec ces sous objets statique et logiciel, il est possible de mettre à jour (persister) les données de l'objet logiciel (ici dictionnaire) (étape 230) dans l'objet statique (ici la
base de données).
La présente invention est un procédé de génération d'applica-
tion susceptible d'être implanté en utilisant un formalisme de représentation de données hiérarchiques et utilisant un langage informatique orienté objet de type Java, C++ ou
analogue.
L'apport principal de la présente invention réside dans la
capacité de modifier dynamiquement le schéma de description
des données, en particulier de gérer facilement de nouveaux
types d'objets ou de nouvelles valeurs.
De plus, dans le cas d'une application client-serveur, dans
laquelle les clients interagissent avec les données (créa-
tion, modification, destruction), l'invention permet de référencer des objets de la base de données dans des pages sur la toile constituant l'interface utilisateur. Elle permet ainsi de référencer des valeurs ou des contenants de valeurs non existants dans des formulaires de saisie. Une fois ces formules envoyés au serveur d'application selon l'invention, ces nouveaux contenants et valeurs sont créés dans la base de données. Une application avantageuse, mais non limitative de la présente invention se trouve dans le domaine médical, notamment lors de la mise en place de réseau de soins
permettant de gérer des dossiers patients cliniques.
Claims (5)
1. Procédé de traitement de données, comprenant les étapes suivantes: a) recevoir un jeu de données à traiter, structurées et reliées entre elles, de type valeur ayant un nom et/ou contenant ayant un nom et aptes à contenir au moins une valeur ayant un nom et/ou au moins un autre contenant ayant un nom; b) définir un objet dictionnaire apte à stocker/trouver
dans un espace mémoire un contenant ou une valeur sous/cor-
respondant à un nom prédéterminé; c) créer une instance vide de l'objet dictionnaire; d) vérifier si la structure de la donnée à traiter est du type valeur ou contenant; e) en cas de donnée de type valeur, stocker/trouver la valeur dans l'espace mémoire sous/correspondant au nom de la donnée à traiter, et revenir à l'étape d) jusqu'à la dernière donnée à traiter dudit jeu tandis qu'en cas de donnée de type contenant, créer un sous objet dictionnaire vide conformément à l'étape c), remplir ledit sous objet dictionnaire par le contenu de la donnée à traiter conformément aux étapes d) à e), et revenir à l'étape d) jusqu'à traiter la dernière
donnée du jeu.
2. Procédé selon la revendication 1, appliqué dans le stockage de données dans une base de données, caractérisé en ce qu'il comprend les étapes suivantes: 1) prévoir une base de données propre à contenir un jeu de données rangées selon une structure hiérarchique du type valeur ayant un nom et/ou contenant ayant un nom et apte à
contenir au moins une valeur et/ou au moins un autre conte-
nant ayant un nom, les données étant séparées les unes des autres par des marqueurs choisis; 2) recevoir une donnée à traiter de type valeur ou contenant ayant un nom; 3) prévoir une instance remplie d'un objet dictionnaire; 4) en cas de donnée de type valeur, stocker ou remplacer la valeur sous son nom dans l'objet dictionnaire; ) en cas de donnée de type contenant, vérifier s'il existe un objet dictionnaire sous ce nom; 6) dans l'affirmative, remplir l'objet dictionnaire par le contenu de la donnée et revenir à l'étape 4) jusqu'à traiter la dernière donnée du jeu tandis que dans la négative, créer un sous-objet dictionnaire vide conformément à l'étape 3) et remplir le sous-objet dictionnaire par le contenu de la donnée conformément aux étapes 4 à 6, et revenir à l'étape 4)
jusqu'à traiter la dernière donnée du jeu.
3. Procédé selon la revendication 1, dans lequel données à traiter sont reçues sous la forme d'un objet dictionnaire afin d'être rangées en série les unes à la suite des autres dans un espace de stockage choisi, caractérisé en ce qu'il comprend en outre les étapes suivantes: I) prévoir un objet dictionnaire rempli de données à traiter; II) pour chaque nom de valeur et/ou contenant stocké dans l'objet dictionnaire, analyser la structure des données contenues dans l'objet dictionnaire sous ce nom; III) en cas de donnée de type valeur, écrire dans l'espace de stockage choisi le nom de la valeur suivi d'un marqueur de valeur et de la valeur elle-même tandis qu'en cas de donnée de type contenant, écrire, dans l'espace de stockage choisi, un marqueur de contenant, le nom du contenant, un marqueur de valeur, et le contenu de la donnée à traiter et un marqueur
de fin de contenant.
4. Procédé selon l'une des revendications précédentes,
caractérisé en ce que l'objet dictionnaire est de type objet logiciel capable de stocker en outre au moins une méthode de calcul sous un nom prédéterminé, et à trouver comme valeur
sous ce nom, le résultat de cette méthode de calcul.
5. Procédé selon l'une quelconque des précédentes revendica-
tions, caractérisé en ce que les données à traiter émanent d'une page sur la toile dans laquelle les données sont structurées et reliées entre elles avec des données de type valeur ayant un nom et/ou contenant ayant un nom et apte à
contenir une valeur ou un contenant ayant un nom.
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0008631A FR2811101B1 (fr) | 2000-07-03 | 2000-07-03 | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet |
| US10/070,520 US7203689B2 (en) | 2000-07-03 | 2001-06-28 | Method for processing structured data using an object-oriented computer language |
| AU2001270702A AU2001270702A1 (en) | 2000-07-03 | 2001-06-28 | Method for processing structured data using an object-oriented computer language |
| EP01949573A EP1222579A1 (fr) | 2000-07-03 | 2001-06-28 | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet |
| PCT/FR2001/002073 WO2002003246A1 (fr) | 2000-07-03 | 2001-06-28 | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0008631A FR2811101B1 (fr) | 2000-07-03 | 2000-07-03 | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| FR2811101A1 true FR2811101A1 (fr) | 2002-01-04 |
| FR2811101B1 FR2811101B1 (fr) | 2002-09-20 |
Family
ID=8852052
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR0008631A Expired - Fee Related FR2811101B1 (fr) | 2000-07-03 | 2000-07-03 | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7203689B2 (fr) |
| EP (1) | EP1222579A1 (fr) |
| AU (1) | AU2001270702A1 (fr) |
| FR (1) | FR2811101B1 (fr) |
| WO (1) | WO2002003246A1 (fr) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112130890A (zh) * | 2020-09-17 | 2020-12-25 | 北京金和网络股份有限公司 | 业务系统开发和维护方法、装置和存储介质及服务器 |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7574450B2 (en) * | 2005-04-19 | 2009-08-11 | International Business Machines Corporation | Method for sharing an object between applications |
| US20080288269A1 (en) * | 2007-05-18 | 2008-11-20 | Siemens Power Generation, Inc. | Enterprise-wide data standardization structure and method |
| CN103164220B (zh) * | 2013-02-21 | 2016-03-02 | 北京控制工程研究所 | 一种星载计算机在轨维护所用浮点立即数的自主处理方法 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4156903A (en) * | 1974-02-28 | 1979-05-29 | Burroughs Corporation | Data driven digital data processor |
| US5093779A (en) * | 1987-07-03 | 1992-03-03 | Hitachi, Ltd. | Computer file system |
| US5313598A (en) * | 1989-12-19 | 1994-05-17 | Hitachi, Ltd. | Method for changing non-leaf entry in tree structure of OSI directory information by sequentially issuing OSI directory commands for the non-leaf entry and lower entries associated therewith in response to decoded change command |
| US5778389A (en) * | 1996-05-23 | 1998-07-07 | Electronic Data Systems Corporation | Method and system for synchronizing computer file directories |
Family Cites Families (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5202986A (en) | 1989-09-28 | 1993-04-13 | Bull Hn Information Systems Inc. | Prefix search tree partial key branching |
| US5257365A (en) * | 1990-03-16 | 1993-10-26 | Powers Frederick A | Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records |
| CA2246940C (fr) * | 1991-03-28 | 2003-03-11 | Ibm Canada Limited-Ibm Canada Limitee | Methode et moyen pour encoder, entreposer et extraire des donnees de traitement archivistiques pour un systeme informatique |
| US5687365A (en) * | 1992-03-17 | 1997-11-11 | International Business Machines Corporation | System and method for creating a data dictionary for encoding, storing, and retrieving hierarchical data processing information for a computer system |
| US5506983A (en) * | 1992-07-06 | 1996-04-09 | Microsoft Corporation | Method and system for transactioning of modifications to a tree structured file |
| US5530957A (en) * | 1992-08-07 | 1996-06-25 | At&T Corp. | Storing trees in navigable form |
| US5634123A (en) * | 1993-07-08 | 1997-05-27 | Park City Group, Inc. | Data management using nested records and code points |
| CA2117846C (fr) * | 1993-10-20 | 2001-02-20 | Allen Reiter | Methode informatique et structure pour le stockage et l'extraction de donnees multidimensionnelles |
| US5867713A (en) * | 1995-04-05 | 1999-02-02 | International Business Machines Corporation | Committing an install plan object for the network installation of application programs |
| US5930786A (en) * | 1995-10-20 | 1999-07-27 | Ncr Corporation | Method and apparatus for providing shared data to a requesting client |
| US5831558A (en) * | 1996-06-17 | 1998-11-03 | Digital Equipment Corporation | Method of compressing and decompressing data in a computer system by encoding data using a data dictionary |
| US5956728A (en) * | 1996-07-17 | 1999-09-21 | Next Software, Inc. | Object graph editing context and methods of use |
| US6226649B1 (en) * | 1997-06-23 | 2001-05-01 | Oracle Corporation | Apparatus and method for transparent access of foreign databases in a heterogeneous database system |
| US5983267A (en) * | 1997-09-23 | 1999-11-09 | Information Architects Corporation | System for indexing and displaying requested data having heterogeneous content and representation |
| US5995975A (en) * | 1997-11-25 | 1999-11-30 | International Business Machines Corporation | Dictionary based process for object containment |
| US6230157B1 (en) * | 1997-11-25 | 2001-05-08 | International Business Machines Corporation | Flattening complex data structures in Java/Javascript objects |
| US6047283A (en) * | 1998-02-26 | 2000-04-04 | Sap Aktiengesellschaft | Fast string searching and indexing using a search tree having a plurality of linked nodes |
| US6499036B1 (en) * | 1998-08-12 | 2002-12-24 | Bank Of America Corporation | Method and apparatus for data item movement between disparate sources and hierarchical, object-oriented representation |
| US6486897B1 (en) * | 1998-09-29 | 2002-11-26 | Apple Computer, Inc. | Multi-repository display system using separate presentation, adaptation and access layers |
| US6405209B2 (en) * | 1998-10-28 | 2002-06-11 | Ncr Corporation | Transparent object instantiation/initialization from a relational store |
| US6628305B1 (en) * | 1998-11-09 | 2003-09-30 | International Business Machines Corporation | Architecture and definition of an extensible, object-oriented graphical user interface framework for managing and administering heterogenous digital library datastores |
| US6356913B1 (en) * | 1999-06-09 | 2002-03-12 | Avaya Technology Corp. | Generic (database-independent) and dynamically-modifiable schema |
| US6490719B1 (en) * | 1999-07-26 | 2002-12-03 | Gary Thomas | System and method for configuring and executing a flexible computer program comprising component structures |
| US6539396B1 (en) * | 1999-08-31 | 2003-03-25 | Accenture Llp | Multi-object identifier system and method for information service pattern environment |
| US6985905B2 (en) * | 2000-03-03 | 2006-01-10 | Radiant Logic Inc. | System and method for providing access to databases via directories and other hierarchical structures and interfaces |
-
2000
- 2000-07-03 FR FR0008631A patent/FR2811101B1/fr not_active Expired - Fee Related
-
2001
- 2001-06-28 EP EP01949573A patent/EP1222579A1/fr not_active Withdrawn
- 2001-06-28 WO PCT/FR2001/002073 patent/WO2002003246A1/fr not_active Ceased
- 2001-06-28 AU AU2001270702A patent/AU2001270702A1/en not_active Abandoned
- 2001-06-28 US US10/070,520 patent/US7203689B2/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4156903A (en) * | 1974-02-28 | 1979-05-29 | Burroughs Corporation | Data driven digital data processor |
| US5093779A (en) * | 1987-07-03 | 1992-03-03 | Hitachi, Ltd. | Computer file system |
| US5313598A (en) * | 1989-12-19 | 1994-05-17 | Hitachi, Ltd. | Method for changing non-leaf entry in tree structure of OSI directory information by sequentially issuing OSI directory commands for the non-leaf entry and lower entries associated therewith in response to decoded change command |
| US5778389A (en) * | 1996-05-23 | 1998-07-07 | Electronic Data Systems Corporation | Method and system for synchronizing computer file directories |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112130890A (zh) * | 2020-09-17 | 2020-12-25 | 北京金和网络股份有限公司 | 业务系统开发和维护方法、装置和存储介质及服务器 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2002003246A1 (fr) | 2002-01-10 |
| EP1222579A1 (fr) | 2002-07-17 |
| FR2811101B1 (fr) | 2002-09-20 |
| AU2001270702A1 (en) | 2002-01-14 |
| US20020194152A1 (en) | 2002-12-19 |
| US7203689B2 (en) | 2007-04-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1470501B1 (fr) | Procedes et systemes de recherche et d'association de ressources d'information telles que des pages web | |
| CN100501730C (zh) | 提供具有搜索查询拓宽的用户接口 | |
| JP4634105B2 (ja) | コンピュータの支援によるクエリ−タスクマッピング | |
| KR101775883B1 (ko) | 정보 스트림의 정보를 처리하는 방법 및 시스템 | |
| FR2853977A1 (fr) | Systemes et procedes pour traiter des donnees de cadre de description de ressources | |
| FR2824160A1 (fr) | Conteneur generique configurable de facon dynamique | |
| FR2748362A1 (fr) | Navigation hypermedia utilisant des hyperliens doux | |
| US20090327226A1 (en) | Library description of the user interface for federated search results | |
| WO2001077889A1 (fr) | Systeme de recherche et d'aide au choix | |
| FR2841998A1 (fr) | Procede d'execution sur une station d'un reseau de communication d'un programme informatique represente dans un langage de balisage | |
| FR2909198A1 (fr) | Procede et disositif de filtrage d'elements d'un document structure a partir d'une expression. | |
| CN112470216A (zh) | 语音应用平台 | |
| FR2811101A1 (fr) | Procede de traitement de donnees structurees utilisant un langage informatique oriente objet | |
| EP1828941B1 (fr) | Dispositif de traitement de données à définition formelle | |
| Hahmann et al. | Connecting linkedgeodata and geonames in the spatial semantic web | |
| WO2015173500A1 (fr) | Base de fichiers relationnelle et interface graphique de gestion d'une telle base | |
| GB2426603A (en) | Client for database | |
| FR2828308A1 (fr) | Systeme de gestion d'une base de donnees topologique | |
| FR2845789A1 (fr) | Systeme et procede de traitement et de visualisation des resultats de recherches effectuees par un moteur de recherche a base d'indexation, modele d'interface et meta-modele correspondants | |
| US20250355894A1 (en) | Universal data representation for heterogeneous data | |
| FR3150317A1 (fr) | Procédé de pseudoanonymisation d’une première requête, en langage naturel, d’interrogation d’une base de données contenant des données confidentielles. | |
| FR2925721A1 (fr) | Procede et dispositif de compilation et d'evaluation d'une pluralite d'expressions a evaluer sur un document structure | |
| Gimenez et al. | Towards a Visual SPARQL-DL Query Builder | |
| FR3032290A1 (fr) | Procede de production automatique d'une base de donnees a partir d'un modele de donnees generique et d'une taxinomie | |
| Cunha et al. | A semantic web application framework |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| TP | Transmission of property | ||
| ST | Notification of lapse |
Effective date: 20090331 |