10.07.2015 Views

Télécharger le mémoire - Recherche - Ign

Télécharger le mémoire - Recherche - Ign

Télécharger le mémoire - Recherche - Ign

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

UNIVERSITE PIERRE ε MARIE CURIELaboratoire LISTINSTITUT GEOGRAPHIQUE NATIONALLaboratoire COGITTHESE DE DOCTORAT DE L'UNIVERSITE PARIS 6SpécialitéInformatiqueprésentée parBénédicte BUCHERPour obtenir <strong>le</strong> grade deDOCTEUR de l'UNIVERSITE PARIS 6Sujet de la thèse :L'aide à l'accès à l'information géographique : un environnement de conceptioncoopérative d'utilisations de données géographiquesdevant <strong>le</strong> jury composé de :soutenue <strong>le</strong> : 25 juin 2002Professeur Jacques ARSACProfesseur François BOUILLEProfesseur Christophe CLARAMUNTProfesseur Anne DOUCETProfesseur Jean-Claude MÜLLERProfesseur Marinette REVENUMonsieur Didier RICHARDMadame Anne RUASPrésident du juryDirecteur de thèseExaminateurRapporteurRapporteurRapporteurInvitéco-directeur de thèse


RemerciementsJe remercie Didier Richard pour <strong>le</strong>s discussions extrêmement fructueuses que nous avons eues. J'aibeaucoup profité de sa compétence et de son enthousiasme. De même, je remercie Marinette Revenupour son accueil et ses commentaires constructifs. Sans eux, je n'aurais pas pu mener à bien ce travailde thèse.Je remercie <strong>le</strong>s membres de mon jury que j'ai trouvés plutôt cha<strong>le</strong>ureux.Plusieurs personnes m'ont permis de faire ce travail au sein du laboratoire COGIT : Serge Motet,Sylvie Lamy puis Anne Ruas. Je <strong>le</strong>s remercie pour <strong>le</strong>ur confiance. Merci aussi à Alain Sombris qui mepermet, ainsi qu'à mes collègues, de travail<strong>le</strong>r dans des conditions privilégiées.Je remercie Serge Motet qui m'a dès <strong>le</strong> début incitée à rédiger des rapports pour formaliser laproblématique abordée et à prendre des contacts pour profiter des compétences des uns et des autres.Cela s'est avéré très important. Je remercie mes autres interlocuteurs de la première heure, Jean-François Hangouët et Leïla Tchikaoui. Leïla m'a beaucoup aidée à assimi<strong>le</strong>r des notions d'acquisitiondes connaissances qui m'étaient nécessaires. Par la suite, j'ai pu me réunir avec diverses personnes del'IGN, outre <strong>le</strong>s chercheurs du laboratoire COGIT. Sans <strong>le</strong>s citer toutes, je remercie toutparticulièrement Yolène Jahard qui m'a aidée à traduire en orienté-objet des éléments de mon modè<strong>le</strong>initial. Avec Céci<strong>le</strong> Lemarié, el<strong>le</strong>s m'ont été d'une aide précieuse pour modéliser la tâched'appariement et avoir une certaine confiance dans la validité du modè<strong>le</strong> générique de tâches et rô<strong>le</strong>s.Je remercie aussi Aurélie Mil<strong>le</strong>drogues qui m'a aidée à réfléchir à l'évaluation des SIG. Jean-PhilippeLagrange m'a éga<strong>le</strong>ment accordé de nombreuses heures volées à son emploi du temps et mises à profitentre autres pour organiser l'état de l'art. Je remercie tout particulièrement Nathalie Aussenac-Gil<strong>le</strong>s àqui j'avais adressé un rapport de mi-thèse. El<strong>le</strong> l'a corrigé en détail et ses encouragements et conseilsm'ont été uti<strong>le</strong>s à plusieurs égards.J'ai aussi bénéficié du travail en équipe au sein de Tapage mené par Anne Ruas. Plus récemment, <strong>le</strong>smembres de l'équipe Consul, Anne, Frédéric Hubert et Sandrine Bal<strong>le</strong>y, m'ont supportée dans tous <strong>le</strong>ssens du terme pendant la fin de cette thèse. A propos de supporter, mes voisins de bureau successifs,Sébastien Mustière et Vincent Beauce, ont été toujours attentifs et constructifs lorsque j'éprouvais unbesoin urgent de discuter de divers points spécifiques de ma thèse. C'est d'ail<strong>le</strong>urs un confort dont jene saurais plus me passer.Je ne suis pas sûre de pouvoir penser aux nombreux <strong>le</strong>cteurs qui m'ont permis de rédiger un mémoirecompréhensib<strong>le</strong>. Mathieu Barrault et Anne Ruas ont déchiffré de nombreuses versions et ils ont su <strong>le</strong>scritiquer relativement radica<strong>le</strong>ment (quand même! ) sans me décourager tota<strong>le</strong>ment. C'est à eux quedoivent al<strong>le</strong>r <strong>le</strong>s compliments que <strong>le</strong>s rapporteurs ont pu faire sur la clarté de mon exposé écrit. Seb,Jeff, Yolène et Jean-Philippe ont éga<strong>le</strong>ment contribué à ce travail d'écriture.Enfin, <strong>le</strong>s membres du laboratoire COGIT m'ont aidée à mettre au point ma présentation ora<strong>le</strong>. Celaprocure beaucoup de gratification, <strong>le</strong> jour de la soutenance, d'être comprise de son auditoire et de sesproches.Ce qui précède n'est vraiment pas une carte de mes affections. Je ne sais pas m'adresser par écrit àceux qui m'aiment et me font <strong>le</strong>s aimer. Mais ce n'est pas fini.3


¡£¢¥¤§¦©¨¦ ¥TABLE DES MATIERESINTRODUCTION 91 PROBLÉMATIQUE : AIDER L’ACCÈS À DES RESSOURCES EN INFORMATION (GÉOGRAPHIQUE)151.1 L’accès aux ressources en information géographique 161.1.1 Les ressources en information géographique 161.1.1.1 L’appréhension et la représentation de l’espace géographique 161.1.1.2 La formalisation de l’information géographique 171.1.1.3 Les bases de données géographiques 201.1.2 L’exploitation des données géographiques 221.1.2.1 Les contextes d' utilisation 221.1.2.2 Les techniques 251.1.2.3 Les outils : <strong>le</strong>s SIG 271.1.3 L’accès à l’information géographique 321.1.3.1 L’accès aux données 321.1.3.2 L’accès à l’interprétation des données 381.1.3.3 L’accès à l’exploitation 391.1.3.4 L’accès à plusieurs bases de données 411.1.4 Bilan de l’accès à l’information géographique 421.2 Aider l’accès à des ressources en information 441.2.1 Accéder à des ressources en information 441.2.1.1 Les contextes 441.2.1.2 Le transfert de connaissances 461.2.1.3 L’accès 491.2.2 Aider l’accès 511.2.2.1 Faciliter l’accès d’un utilisateur à l’exploitation d’une ressource 511.2.2.2 Faciliter l’accès d’un utilisateur à l’exploitation de plusieurs ressources 531.2.2.3 Faciliter l’accès de plusieurs utilisateurs à l’exploitation de ressources 541.3 Bilan 552 ANALYSE DE L’ÉTAT DE L’ART 575


¡£¢¥¤§¦©¨¦ ¡¥¦¦2.1 Etat de l’art des techniques d’aide à l’accès 582.1.1 Généralités 582.1.1.1 Solution générique 582.1.1.2 Un di<strong>le</strong>mme classique : expressivité et maniabilité 602.1.1.3 Structure de l’état de l’art des techniques 612.1.2 L’aide à l’accès à l' information (données, informations, connaissances) 622.1.2.1 L’aide à l’accès aux données 622.1.2.2 L’aide à l’accès aux informations 632.1.2.3 L’aide à l’accès aux connaissances 692.1.3 L’aide au raisonnement formel 712.1.3.1 Généralités 712.1.3.2 La modélisation axée sur <strong>le</strong> QUOI : <strong>le</strong>s ontologies de domaine 732.1.3.3 Les modè<strong>le</strong>s axés sur <strong>le</strong> COMMENT 762.1.4 Bilan des techniques d’aide à l’accès et de <strong>le</strong>ur intérêt dans notre contexte 852.2 Etat de l' art des formalisations des QUOI et COMMENT géographiques 892.2.1 Généralités 892.2.2 Le QUOI 902.2.2.1 La représentation généra<strong>le</strong> de l’information géographique 902.2.2.2 Des représentations dédiées à des contextes applicatifs 922.2.3 Le Pourquoi 932.2.3.1 Les interactions de l’homme et du monde 942.2.3.2 Les représentations de l’espace géographique partagées par tous 962.2.3.3 Les représentations de l’espace géographique dédiées à des communautés d’utilisateurs 982.2.3.4 La formalisation de résultats d' applications 992.2.4 Le Comment 992.2.4.1 La modélisation 1002.2.4.2 La structuration de l' application 1012.2.5 Le Avec Quoi 1032.2.5.1 La création d’outils 1032.2.5.2 Les descriptions normalisées d' outils 1062.2.6 Bilan 1103 NOTRE APPROCHE 1113.1 Définition de notre contribution 1123.1.1 Principes généraux 1123.1.2 Définition du modè<strong>le</strong> 1153.1.2.1 Les tâches 1156


¡£¢¥¤§¦©¨¦ ¡¥¦¦3.1.2.2 Les tâches comp<strong>le</strong>xes 1163.1.2.3 Les tâches primitives 1183.1.2.4 Rô<strong>le</strong>s et domaine 1193.1.2.5 Un langage de description de tâches 1223.1.3 Un système d’aide à l’accès 1253.2 Spécialisation et instanciation du modè<strong>le</strong> 1313.2.1 Spécification du domaine géographique 1313.2.1.1 Rendre compte du contexte de l' utilisateur 1323.2.1.2 Intégrer <strong>le</strong>s deux grandes catégories de représentations de l’espace géographique 1333.2.1.3 Décrire <strong>le</strong>s lots de données disponib<strong>le</strong>s 1353.2.2 Méthode d’analyse de tâches géographiques 1363.2.3 La tâche d’appariement 1373.2.3.1 Vocabulaire général 1383.2.3.2 Détail de la méthode 1413.2.3.3 Exploitation du modè<strong>le</strong> de l’appariement 1463.2.4 La tâche de localisation 1473.2.4.1 L’aspect déclaratif 1483.2.4.2 L’aspect opérationnel 1533.2.4.3 Exploitation du modè<strong>le</strong> de localisation 1593.2.5 La tâche de détection de proximité et de détermination de navigation 1613.2.5.1 Les rô<strong>le</strong>s de la détection de proximité 1613.2.5.2 Les rô<strong>le</strong>s de la détermination de navigation 1623.2.5.3 Exploitation du modè<strong>le</strong> de navigation 1653.3 Opérationnalisation du modè<strong>le</strong> 1683.3.1 La représentation du modè<strong>le</strong> de tâches géographiques 1683.3.1.1 La représentation du domaine 1683.3.1.2 La représentation des tâches 1703.3.2 La dynamique associée au modè<strong>le</strong> géographique 1723.3.2.1 Mécanismes de spécification 1723.3.2.2 L’interface 1773.3.2.3 Implémentation de la tâche de Localisation 1833.3.3 Bilan 1863.3.3.1 Apports à la résolution de la problématique initia<strong>le</strong> 1873.3.3.2 Evaluation du prototype 188CONCLUSION ET PERSPECTIVES 191GLOSSAIRE 1977


¡£¢¥¤§¦©¨¦ ¡¥¦¦BIBLIOGRAPHIE 1998


¡£¢¥¤§¦©¨¥¢¦©¡INTRODUCTIONContexteL'espace géographique est <strong>le</strong> monde dans <strong>le</strong>quel nous vivons. La notion de situation dans l’espace se trouve aucœur de la plupart des raisonnements, décisions, et activités de l’homme, que ce soit dans sa vie de tous <strong>le</strong>s joursou dans certaines professions. Pour cette raison, l'homme a toujours eu besoin de représentations de portions dumonde géographique pour avoir une appréhension de ce monde dépassant sa propre perception. De tel<strong>le</strong>sreprésentations sont classiquement <strong>le</strong>s cartes. La carte remplit trois fonctionnalités : stocker des informationsgéographiques, permettre des raisonnements sur ces informations, comme concevoir un itinéraire ou implanterun centre de loisirs, et être un vecteur de communication.Depuis une quinzaine d'années, <strong>le</strong>s bases de données géographiques numériques (BDG) sont produites par desinstituts nationaux comme l'Institut Géographique National (IGN) pour en dériver des cartes papier ou pard'autres organismes dans <strong>le</strong> cadre d'applications plus spécifiques. Les BDG remplacent <strong>le</strong>s cartes papier pour lapremière fonctionnalité de stockage d'informations géographiques. El<strong>le</strong>s remplissent aussi la fonctionnalité desupporter <strong>le</strong> raisonnement puisqu'el<strong>le</strong>s servent de contenu à des applications de traitement de l'informationgéographique. El<strong>le</strong>s peuvent souvent être uti<strong>le</strong>s au-delà de l’application pour laquel<strong>le</strong> el<strong>le</strong>s ont été spécifiées.Cela reste vrai même si cette application est une cartographie; <strong>le</strong>s informations contenues dans une base dedonnées numériques ne sont ni entièrement transcriptib<strong>le</strong>s ni surtout opérationnel<strong>le</strong>s sur une carte papier.Certains utilisateurs potentiels pourraient dériver de BDG des informations non explicitées dans <strong>le</strong>s produits quien ont été dérivés (application initia<strong>le</strong> ou cartes), et diffici<strong>le</strong> à dériver de ces produits initiaux. Ce processus estrestreint à des utilisateurs qui entretiennent des relations privilégiés avec <strong>le</strong>s instituts nationaux, par exemp<strong>le</strong> <strong>le</strong>sutilisateurs du domaine routier et celui de la défense, ou qui produisent eux-mêmes <strong>le</strong>urs bases. Il est nécessairede faire un effort de diffusion des BDG vers tous <strong>le</strong>s utilisateurs potentiels de ces bases.Le contexte actuel rend d'ail<strong>le</strong>urs de plus en plus pressant ce besoin de diffusion car <strong>le</strong>s utilisateurs potentiels dedonnées géographiques sont en nombre croissant. L’information géographique joue un rô<strong>le</strong> important dans lasociété d’information. Il est classiquement admis que 80% des décisions s’appuient sur un contextegéographique, comme <strong>le</strong> rappel<strong>le</strong>nt [Denègre et Salgé 96]. Il y a actuel<strong>le</strong>ment un accroissement du volume dedonnées susceptib<strong>le</strong>s d’être localisées dans <strong>le</strong>ur emploi, c’est-à-dire dont l’exploitation nécessite de <strong>le</strong>s géoréférencer.On peut citer <strong>le</strong>s données du géomarketing. De plus, <strong>le</strong>s logiciels de manipulation de donnéesgéographiques se vulgarisent.9


¡£¢¥¤§¦©¨¥¢¦©¡Dans une optique de diffusion des données géographiques, des métadonnées géographiques, c'est-à-dire desdonnées décrivant <strong>le</strong>s BDG sont développées. El<strong>le</strong>s sont associées à la construction de bibliothèques de BDG, etplus récemment d'infrastructures nationa<strong>le</strong>s d’informations localisées. Etant à l'origine dédiées au transfert dedonnées, el<strong>le</strong>s comportent essentiel<strong>le</strong>ment des informations relatives aux protoco<strong>le</strong>s de production des donnéeset au contenu des bases. Or l'expression d'un besoin de données géographiques ne peut pas s'appuyer sur desseu<strong>le</strong>s informations de contenu des bases. El<strong>le</strong> doit s'appuyer sur d'autres termes.Ces autres termes doivent par exemp<strong>le</strong> rendre compte de la diversité des modélisations et représentations del’espace géographique. Le terme "modélisations" renvoie aux modè<strong>le</strong>s construits pour <strong>le</strong>s raisonnementsd’hommes et <strong>le</strong> terme "représentations" renvoie aux modè<strong>le</strong>s construits pour <strong>le</strong>s raisonnements de machines. Iln’existe pas de modélisation et de représentation universel<strong>le</strong> de l’espace géographique [Raper 96] [Mennis et al.00]. Une des causes en est que l’espace géographique –modélisé dans l’information géographique- est une réalitéque chacun perçoit et représente dans son expérience. Les activités conduisant à modéliser l’espacegéographique sont diverses, courantes ou spécialisées, comme la circulation routière ou l’aménagement duterritoire. Les catégories utilisées pour décrire <strong>le</strong> monde varient d'une représentation à l'autre et il n'existe pasd'ontologie de l'information géographique. Les concepts des utilisateurs peuvent donc renvoyer à des contextesapplicatifs divers et s'appuyer sur des termes applicatifs précis. Ces concepts peuvent ne pas être représentésdans la BDG, par exemp<strong>le</strong> certaines relations entre objets, ou ils peuvent être représentés de façon très différente,par exemp<strong>le</strong> <strong>le</strong> concept de vil<strong>le</strong> ou de quartier. C'est <strong>le</strong> cas de concepts dont la représentation dans <strong>le</strong>s BDG faitappel à des notions mathématiques sophistiquées comme la notion de situation dans l'espace. Cette notion,essentiel<strong>le</strong> aux raisonnements géographiques, est explicitée dans <strong>le</strong>s BDG de la façon suivante : des donnéesgéographiques représentent une partie du monde réel en décrivant des éléments de ce monde, par exemp<strong>le</strong> uneroute ou une borne géodésique, et <strong>le</strong>urs coordonnées dans un système de référence en général mathématique. Cescoordonnées sont la représentation de la notion de situation dans l’espace. Or l'espace est continu et il est délicatde représenter par exemp<strong>le</strong> <strong>le</strong>s limites du Mont Blanc. Certaines entités sont ainsi représentées dans une BDGavec des choix de représentation auquel l'utilisateur n'a pas toujours accès. D’autres choix menant à diversesreprésentations sont aussi issus de la nécessité de discrétisation des formes géométriques ou de <strong>le</strong>urapproximation par des formes connues. La nécessité de représenter des formes géométriques dans des donnéesnumériques, par exemp<strong>le</strong> informatiser <strong>le</strong> contour de la côte bretonne, implique la discrétisation de ces formes, ou<strong>le</strong>ur approximation par des formes connues. Ces choix éloignent la représentation de cel<strong>le</strong> que l'utilisateur peutavoir.Ces autres termes doivent éga<strong>le</strong>ment rendre compte des capacités de dérivation de logiciels spécifiques, <strong>le</strong>ssystèmes d’information géographique (SIG), qui sont dédiés à la manipulation des données géographiques. Cessystèmes proposent des fonctionnalités de systèmes de gestion de bases de données (SGBD) classique ainsi quela visualisation graphique des données, <strong>le</strong> support de requêtes spatia<strong>le</strong>s, et des traitements spécifiques d’analysespatia<strong>le</strong> et de cartographie. Ces systèmes apportent aux utilisateurs <strong>le</strong>s capacités de dérivations nécessaires à lasatisfaction de <strong>le</strong>urs besoins, mais ils apportent peu d'information sur la façon de <strong>le</strong>s utiliser. Or la manipulationde données géographiques numériques, c'est-à-dire l'utilisation de ces logiciels, ne suit pas la même logique quela <strong>le</strong>cture d'une carte. L’œil de l’homme, lors de la <strong>le</strong>cture d’une carte papier, réalise des traitements comp<strong>le</strong>xesqui s'appuient sur des informations non explicitées dans la représentation cartographiques comme <strong>le</strong>s relations devoisinage. Typiquement, la <strong>le</strong>cture d’une carte permet de répondre rapidement à une requête comme : « trouver<strong>le</strong>s grandes maisons situées à l’intérieur du virage sur la RN20, peu après <strong>le</strong> croisement avec <strong>le</strong> pont». Or <strong>le</strong>sreprésentations utilisées pour construire des BDG sont pour la plupart des représentations cartographiques, quin'explicitent pas non plus ces relations. L’automatisation de la précédente requête sur des données numériquesest par exemp<strong>le</strong> relativement comp<strong>le</strong>xe puisqu'el<strong>le</strong> s'appuie sur des objets géométriques et met en œuvre destraitements mathématiques.10


¡£¢¥¤§¦©¨¥¢¦©¡En définitive l'accès d'utilisateurs aux données géographiques, c'est-à-dire au potentiel d'information dérivab<strong>le</strong> deces données, pose des problèmes nouveaux par rapport à l'accès aux cartes qui ne sont pas réglés par <strong>le</strong>smétadonnées actuel<strong>le</strong>s. L'expression du besoin d'information géographique d'un utilisateur est très loin de ladescription de l'utilisation de données géographiques pouvant dériver cette information, sous une forme ou sousune autre. Les métadonnées géographiques ne sont pas suffisante pour traduire l'expression d'un besoin en unedésignation des ressources uti<strong>le</strong>s pour <strong>le</strong> satisfaire : el<strong>le</strong>s ne tiennent pas suffisamment compte des conceptsnécessaires à l'expression de besoins, et el<strong>le</strong>s ne tiennent pas compte des capacités de dérivation des SIG.Objectif de ce travail et démarche globa<strong>le</strong>Cette thèse est menée au laboratoire COGIT de l’IGN, laboratoire travaillant sur <strong>le</strong>s bases de donnéesgéographiques : <strong>le</strong>ur modélisation, <strong>le</strong>ur entretien, <strong>le</strong>ur utilisation pour dériver des informations à une résolutionplus petite, <strong>le</strong>ur consultation par des utilisateurs, la modélisation d’une application spécifique (la gestion d’unrisque, la rédaction d’une carte).L’objectif de ce travail est d'améliorer l’accès des utilisateurs aux bases de données géographiques. Il ne s’agitpas de l’accès aux données en tant que tel<strong>le</strong>s : savoir que <strong>le</strong>s données existent, où el<strong>le</strong>s sont, et comment <strong>le</strong>sobtenir. Il s’agit plutôt de l’accès aux données en tant que ressources en information : savoir comment utiliser unjeu de données, ou plusieurs jeux ensemb<strong>le</strong>s, pour répondre à un besoin.L’accès à des ressources en information est un problème important qui dépasse <strong>le</strong> domaine de l'informationgéographique. La constitution croissante de « grosses » bases spécialisées et la diffusion de l’information doiventamener de plus en plus d’utilisateurs divers à manipu<strong>le</strong>r des informations. Cette problématique élargie renvoie àdeux activités importantes : <strong>le</strong> stockage de l’information et l’exploitation des stocks.La constitution de stocks d'information -typiquement des bases de données- nécessite de choisir unereprésentation pour pouvoir entreposer des données décrivant cette information. Certaines informations seprêtent naturel<strong>le</strong>ment à la phase de représentation, quand el<strong>le</strong>s appartiennent à un domaine déjà structuré, commedes données bancaires. Mais ce n'est pas toujours <strong>le</strong> cas, en particulier l'information géographique ne renvoie pasà un domaine naturel<strong>le</strong>ment structuré. Il faut alors construire un modè<strong>le</strong>, et une représentation associée à cemodè<strong>le</strong>, pour décrire des informations. Cette activité s'appuie sur <strong>le</strong>s modè<strong>le</strong>s associés aux méthodesd'acquisition de données, et sur <strong>le</strong>s modè<strong>le</strong>s <strong>le</strong>s mieux adaptés aux utilisations prévues des données.L'activité suivante, accéder à une information stockée, implique de comprendre <strong>le</strong> modè<strong>le</strong> et la représentationchoisis lors de la constitution des ressources et éventuel<strong>le</strong>ment d'en changer si <strong>le</strong> modè<strong>le</strong> n'est pas adapté àl'utilisation que l'on veut faire des données. L'accès peut aussi impliquer de travail<strong>le</strong>r avec plusieursreprésentations différentes si plusieurs ressources sont exploitées conjointement.Le cas de l’accès à l’exploitation de l’information géographique est particulièrement problématique en l’absencede représentation universel<strong>le</strong> de cette information. Ceci est aggravé par un problème moins théorique maisincontournab<strong>le</strong> : il existe plusieurs formats de données géographiques, en raison de la multiplicité des formatspropriétaires développés par <strong>le</strong>s vendeurs de SIG, logiciels dédiés à la manipulation de ces données.Le domaine scientifique apportant <strong>le</strong> plus d’éléments de réponses à ce problème général est l’IntelligenceArtificiel<strong>le</strong> (IA) et plus précisément <strong>le</strong>s démarches en acquisition des connaissances. L’acquisition desconnaissances est la branche de l’IA qui étudie la formalisation de connaissances : expliciter <strong>le</strong>s connaissancespossédées par des experts et <strong>le</strong>s rendre opérationnel<strong>le</strong>s dans des systèmes. Dans notre cas, ces démarches sontintéressantes car el<strong>le</strong>s supportent <strong>le</strong> raisonnement formel et la répartition des connaissances de ce raisonnemententre divers acteurs. Il nous semb<strong>le</strong> qu’il est justement nécessaire de mettre en place de meil<strong>le</strong>urs moyens auservice d’un type de raisonnement formel particulier : la conception d’applications géographiques à partir deressources disponib<strong>le</strong>s. Il est important que ce type de raisonnement soit distribué entre plusieurs acteurs :l'utilisateur qui exprime son besoin, et un système d'aide à l'accès qui lui apporte des connaissances qu'il nepossède pas, par exemp<strong>le</strong> sur <strong>le</strong>s capacités de dérivation des SIG.11


¡£¢¥¤§¦©¨¥¢¦©¡Ce travail est donc une démarche d’application des résultats de l’acquisition des connaissances au domaineparticulier de l’information géographique.Plan de ce rapportNotre démarche est structurée par <strong>le</strong>s questions suivantes :Quel est <strong>le</strong> contexte de l’aide à l’accès à l’information géographique ?Quel<strong>le</strong>s sont <strong>le</strong>s aides actuel<strong>le</strong>s ?Quel<strong>le</strong> contribution proposons-nous?La réponse à la première question s’appuie sur l’analyse, dans la section 1.1, de ce qu’est l’informationgéographique, quel<strong>le</strong>s données représentent cette information et quel<strong>le</strong>s en sont <strong>le</strong>s fournisseurs et <strong>le</strong>sutilisations. Cette première question nous amène aussi à étudier dans la section 1.2 la notion d’accès à uneressource en information et d’aide à cet accès.La deuxième question est traitée en deux temps.La partie 2.1 fait l’état de l’art des techniques utilisées pour faciliter l’accès à des ressources en information.Cette analyse nous permet de délimiter <strong>le</strong>s types de démarches qui nous intéressent : <strong>le</strong>s techniques d’aide auraisonnement formel mises en place par <strong>le</strong>s travaux d’IA et qui portent sur la modélisation. Actuel<strong>le</strong>ment, il estpréconisé de modéliser de façon distincte et reliée deux catégories de connaissances : des connaissances dedescription d’un domaine, <strong>le</strong> QUOI, et des connaissances de manipulation des objets de ce domaine, <strong>le</strong>COMMENT.Le deuxième vo<strong>le</strong>t de l’état de l’art, 2.2, analyse <strong>le</strong>s formalisations de l’information géographique etl’application du principe énoncé ci-dessus de distinction et intégration du QUOI et du COMMENT. Lesdémarches étudiées ne sont pas nécessairement dédiées à l’accès mais l’analyse du cas général a permis demontrer que ces démarches étaient une contribution pertinente à notre problématique. L’étude de ces démarchesmontre qu’el<strong>le</strong>s n’appliquent pas <strong>le</strong> principe essentiel exposé ci-dessus, concernant la modélisation desconnaissances. El<strong>le</strong>s n' explicitent pas la distinction entre <strong>le</strong> QUOI et <strong>le</strong> COMMENT. De plus, aucune démarchene porte sur une formalisation globa<strong>le</strong> du COMMENT, c' est-à-dire une formalisation décrivant des opérationsélémentaires, des méthodes combinant ces opérations, et des applications mettant en œuvre ces méthodes dansdes contextes d' utilisateurs.Nous répondons enfin à la troisième question en nous appuyant sur <strong>le</strong>s principes de modélisation provenant desrecherches en acquisition de connaissances. Nous proposons un modè<strong>le</strong> décrivant <strong>le</strong>s données géographiques,c' est-à-dire situé au niveau des métadonnées, et qui intègre des connaissances sur <strong>le</strong>s QUOI et COMMENT del’information géographique. Le QUOI renvoie aux descriptions de l’espace géographique construites dansplusieurs contextes : l’appréhension par l’homme de cet espace, <strong>le</strong>s communautés d’utilisateurs, et lareprésentation de l’information géographique dans des bases de données. Le COMMENT comprend nonseu<strong>le</strong>ment <strong>le</strong>s outils de manipulation des données mais aussi <strong>le</strong>s méthodes de manipulation de ces outils et laformulation de besoins auxquels ces méthodes permettent d’apporter des réponses.Dans <strong>le</strong> cadre de cette thèse, il n' est pas envisageab<strong>le</strong> de construire la base de connaissances complète associée àce modè<strong>le</strong>. Nous mettons plutôt en place des éléments génériques de modélisation qui doivent se spécialiser parla suite et être instanciés pour constituer une base de connaissances de plus en plus complète.Pour faire ce modè<strong>le</strong>, nous proposons un langage de description de tâches, méthodes et rô<strong>le</strong>s. Ces notionsprovenant du domaine de l' acquisition des connaissances permettent d' intégrer <strong>le</strong>s deux catégories QUOI etCOMMENT de respecter la distinction entre ces deux catégories. Notre modè<strong>le</strong> est formalisé à l’aide d’unegrammaire Backus Naur Form.Par ail<strong>le</strong>urs, nous définissons l’architecture et <strong>le</strong>s fonctions d’un système associé à ce modè<strong>le</strong> et dédié à l' aide àl’accès. Ces fonctions sont formalisées sous forme de tâches à l’aide de la grammaire. Ces dernières tâches nesont pas des tâches géographiques. Ce sont des tâches qui réalisent une spécification coopérative d’une tâche12


¡£¢¥¤§¦©¨¥¢¦©¡géographique par un utilisateur et <strong>le</strong> système. La tâche géographique spécifiée correspond à une utilisation dedonnées géographiques qui répond au besoin de l’utilisateur.Une étape incontournab<strong>le</strong> de cette démarche est la construction d’un prototype. Nous choisissons un langaged' implémentation orienté-objet. Ce prototype permet d’évaluer la faisabilité de notre démarche c’est-à-dire sacontribution à la résolution du problème initial : l’accès d’utilisateurs à l’exploitation de données géographiques.13


14¡£¢¥¤§¦©¨¥¢¦©¡


¡£¢¥¤§¦ ¨¥©£ ¥! #"$%$&'( ) *+,¥-.0/ 1 2£3435#67298:5#6@?¥;$35#6A5BCB:DE>@;FG2$H£C>B I JGK§LMJONP¥Q=RST@U:K V1 PROBLEMATIQUE : AIDER L’ACCES A DESRESSOURCES EN INFORMATION (GEOGRAPHIQUE)Le but de ce chapitre est d’exposer <strong>le</strong> problème que ce mémoire se propose de traiter. Ce travail porte sur l’accèsaux données géographiques en tant que ressources en information géographique. La formalisation de ceproblème est diffici<strong>le</strong> pour deux grandes raisons. La première est la comp<strong>le</strong>xité de l’information géographique :ces ressources sont variées, <strong>le</strong>urs manipulations possib<strong>le</strong>s éga<strong>le</strong>ment. La deuxième raison est la comp<strong>le</strong>xité duproblème général d’accès à des informations stockées. Nous consacrons une section pour détail<strong>le</strong>r chacun de cesaspects indépendamment de l’autre, c’est-à-dire la nature comp<strong>le</strong>xe de l’information géographique d’une part etla notion d’accéder à des informations, non nécessairement géographiques, d’autre part.Une première section, 1.1, rappel<strong>le</strong> ainsi ce qu’est l’information géographique, comment el<strong>le</strong> est exploitée, etrésume la situation actuel<strong>le</strong> concernant l’accès d’utilisateurs à l’exploitation de données géographiques et <strong>le</strong>sobstac<strong>le</strong>s à cet accès, sans formaliser davantage ce problème.Nous nous concentrons ensuite sur <strong>le</strong> cas général dans la section 1.2. La notion d’accès à des informationsstockées est détaillée dans la section 1.2.1. Puis <strong>le</strong> problème d’aider cet accès est formalisé dans la section 1.2.2.15


¡£¢¥¤§¦ ¨¥©£ ¥ "!#%$&' ( )£*"!+$ , )£-.-0/1)*0/2!£0/"/03¥!%-0/4+*53!£&6)% 7 86§98:!) ";0?¥@"AB C3DFE¥GHEJIFK%L M¥@%@N*>OM6P£QSRH?*>>0C3P9R@?*>O?6DSB D£TUC3RWVXMAB C3DZY9[¥C*YRHM6\:]9B ^P?1.1 L’accès aux ressources en informationgéographiqueDans cette partie, nous présentons <strong>le</strong>s éléments importants de l’accès aux ressources en informationgéographique, et plus exactement <strong>le</strong>s éléments qui en font une problématique. L’informationgéographique est un domaine comp<strong>le</strong>xe. Nous ne cherchons pas à <strong>le</strong> présenter en détail mais plutôt àmettre en avant <strong>le</strong>s facteurs de sa comp<strong>le</strong>xité.Dans une première section, <strong>le</strong>s processus menant à la constitution de ressources en informationgéographique sont introduits : l’appréhension et la formalisation de l’espace géographique, lareprésentation d’information géographique dans des données.La section suivante présente <strong>le</strong>s exploitations de ces ressources.Enfin, nous détaillons <strong>le</strong>s modalités de l’accès d’utilisateurs à cette information c’est-à-dire l’accès auxdonnées et à <strong>le</strong>ur exploitation.1.1.1 Les ressources en information géographiqueL’information géographique est la représentation de l’espace géographique. Le terme représentation estpris ici au sens large :- il peut s’agir de schémas mentaux construits lors de l’appréhension d’une réalité, et guidant <strong>le</strong>sappréhensions futures,- il peut s’agir de modè<strong>le</strong>s de raisonnement,- ou encore cela peut être un schéma de données.Nous étudions dans une première section, 1.1.1.1, l’information géographique construite dans <strong>le</strong>s deuxpremiers cas, c’est-à-dire lors de l’appréhension de l’espace géographique par l’homme et de lareprésentation de cet espace dans <strong>le</strong>s raisonnements de l’homme. La section suivante, 1.1.1.2, détail<strong>le</strong><strong>le</strong>s formalisations de cette information en vue de la stocker dans des données ou de la manipu<strong>le</strong>rautomatiquement dans des systèmes.1.1.1.1 L’appréhension et la représentation de l’espacegéographiqueDe façon généra<strong>le</strong>, toute représentation est <strong>le</strong> résultat d' une opération d' abstraction et dépend des sujetsqui la font, et donc du contexte. Un des principaux facteurs de la comp<strong>le</strong>xité de l’information16


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB & D 9 9E$7 D0F£GIH 8$77*< F3H 98$7J80=I; =£KL< HNMOD :;


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ¥@ ACBEDF; G380H+I J K¥99L$7NMOG38$7HP8$77*


UUUUU¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


UUUUUU¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 61.2.2 Aider l’accès7*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ ¦¦ ¨¦¥¤© !" # ¢£¦$©% & ¢£'('*)+¢$*),©£*))*-¥© '*).%¦$/-©£!0¢ ¨¦ 1 20§324©¢¤¡¦5-$ 67*8¥9:; ?A@CB ; D380E+F G H¥99I$7KJLD38$7EM8$77*


¡£¢¥¤§¦ ¨¥©£ £¥£¥ ¥!"2 ANALYSE DE L’ETAT DE L’ARTLa partie précédente expose la problématique abordée par ce travail : aider des utilisateurs à accéder à desressources en information géographique. Nous avons d’abord présenté des éléments importants touchant àl’accès aux ressources en information géographique. Puis nous avons présenté la notion d’aide à l’accès enmettant en va<strong>le</strong>ur l’axe manipulation de connaissances et non l’axe information géographique de notre problèmeinitial.Cette partie analyse <strong>le</strong>s démarches abordant cette problématique, qu’el<strong>le</strong> soit généra<strong>le</strong> ou limitée au cas del’information géographique.Nous faisons dans un premier temps abstraction de notre domaine d’information pour nous focaliser sur la notiond’aide à l’accès. Cet objectif générique d’aide à l’accès a été décomposé dans la partie précédente, section 1.2.2,en 5 sous-objectifs. Toute démarche contribuant à l’un de ces sous-objectifs entre dans notre état de l’art du casgénéral ; ces sous-objectifs forment en quelques sortes <strong>le</strong>s dimensions possib<strong>le</strong>s de ce premier vo<strong>le</strong>t. D’après laremarque faite dans <strong>le</strong> dernier bilan, l’obstac<strong>le</strong> principal que nous souhaitons aborder est <strong>le</strong> fossé entre <strong>le</strong>sconcepts des utilisateurs et ceux des BDG. Cet obstac<strong>le</strong> est traité par l’aide à la construction de l’espace destransfert. Nous nous intéresserons donc surtout aux démarches qui développent de façon conséquente cettefonctionnalité et nous structurons l’état de l’art dans <strong>le</strong> cas général selon cette dimension, en distinguant troisclasses (cf. 2.1.2) : <strong>le</strong>s démarches facilitant l’accès aux données, aux informations ou aux connaissances. Ils’agit des démarches qui facilitent l’exploration, focalisée par un contexte d' utilisateur, de l’ensemb<strong>le</strong> desdonnées, informations ou connaissances, que l’on pourrait acquérir depuis une ressource. La partie 2.1.3 détail<strong>le</strong><strong>le</strong>s travaux d’aide au raisonnement formel qui entrent dans la catégorie d’aide à l’accès aux connaissances.A l’issue de cet état de l’art sur <strong>le</strong>s techniques d’aide à l’accès, nous faisons un bilan de <strong>le</strong>urs intérêts dans notrecontexte. Cela nous permet de restreindre <strong>le</strong> cadre technique de notre travail à l’aide au raisonnement formel.Nous tenons compte des conclusions de ce premier vo<strong>le</strong>t de l’état de l’art et de cette délimitation du cadretechnique de notre travail pour élaborer un deuxième vo<strong>le</strong>t portant sur <strong>le</strong> cas de l’information géographique. Cedeuxième vo<strong>le</strong>t étudiera donc <strong>le</strong>s formalisations existantes de l’information géographique.57


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'&(')+*-,/.0#12#435 76 8 1:9;#435


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABLa description des besoins d’utilisateursDe façon symétrique, un service d’aide possède une description des besoins d’utilisateurs, ou plus exactement unlangage dans <strong>le</strong>quel est décrit <strong>le</strong> besoin de l’utilisateur. Cela peut être <strong>le</strong> même langage que celui servant àdécrire <strong>le</strong>s ressources ou un autre langage, dédié à la description de besoins, indépendamment des ressources. Cecomposant contribue à O1 et à O5.Le mode d’interaction avec l’utilisateurUn autre élément essentiel d’une solution est <strong>le</strong> mode d’interaction avec l’utilisateur permettant de construire ladescription de l’utilité attendue, c’est-à-dire du besoin de l’utilisateur. Cette interaction peut être une navigationde l’utilisateur dans une description des besoins ou dans une description des ressources. Cela peut aussi êtrel’expression d’une requête de l’utilisateur.Ce composant contribue de fait à O2. Il contribue aussi à O5, la prise en compte d’une variété de contextes etcomportements d’utilisateurs.Le mécanisme de mise en adéquation d’une expression de besoin en unerequête de ressourcesUn composant nécessaire pour éviter "l' accès à l' aveug<strong>le</strong>tte" (cf. 1.2.2.1) est un mécanisme de mise enadéquation d’une description de besoin et d’une description de ressources. Ce composant correspond à O3.L’indexation des ressourcesEnfin, de même que <strong>le</strong> système possède une interface avec <strong>le</strong>s utilisateurs, il possède une interface avec <strong>le</strong>sressources. L' indexation contribue à O1 de façon minima<strong>le</strong>, c' est-à-dire qu' el<strong>le</strong> désigne l' existence des ressources.Par ail<strong>le</strong>urs, O2 (l’aide à la sé<strong>le</strong>ction d’information uti<strong>le</strong>) n’est possib<strong>le</strong> que si la description des ressources estassociée à des index qui inversent la relation (ressources,contenu). Enfin cette indexation contribue aussi à O4puisqu’el<strong>le</strong> permet de regrouper des pointeurs sur des ressources physiquement distinctes.59


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABSous-objectifs de l’aide à l’accèsArchitecture générique d’un système d’aide à l’accèsUtilisateurL’aide à l’accèsde plusieurs utilisateursà plusieurs ressourcesO5 : S’adresser à desutilisateurs divers[6\/]^UEV/W/X£Y/Z_a`cb_dInteractionsystème/utilisateur(Requête,Navigation)L’accèsd’un utilisateurà plusieursressourcesO1 : Construirel’espace destransfertO2 : Sé<strong>le</strong>ctionnerl’information uti<strong>le</strong>O3 : Traduire unesé<strong>le</strong>ctiond’information uti<strong>le</strong>en une sé<strong>le</strong>ctionde lot à acquérireEf/g/h£i/j k6l/mn_a`cb_ToJ6K/LMCED/F/G£H/INPORQNTSk6l/mneEf/g/h£i/jDescriptionde besoins d’utilisateursTraductiond’une expression de besoinen une requête de ressourcesO4 : Fédérer desressourcespTqr2pts{6|/}~uEv/w/x£y/zDescription des ressourcespPRrpTqArptsIndexation des ressourcesRessourcesFigure 22 : Architecture générique d’un système permettant à divers utilisateurs d’accéder à diversesressources : <strong>le</strong>s éléments techniques et <strong>le</strong>ur contribution aux diverses fonctionnalités caractérisant une solution.[Figure 22 : Generic architecture of a system allowing different users to access different resources : technicalcomponents and their contribution to the several functionalities characterizing a solution].2.1.1.2 Un di<strong>le</strong>mme classique : expressivité et maniabilitéDès qu’on ne se situe plus dans <strong>le</strong> langage naturel et que l’on cherche un mode d’expression plus formel, en vued’implémenter un système, il y a un compromis à trouver entre : la richesse de description possib<strong>le</strong> etl’efficacité du raisonnement que l’on peut mener sur ces descriptions. C’est ce que nous verrons plus tard àpropos des langages de description d’information.Dans <strong>le</strong> cas d’un système facilitant l’accès à des ressources, la richesse du langage correspond à :- la possibilité d’avoir une bonne interface avec <strong>le</strong>s ressources -décrire de nombreuses ressources différentesen <strong>le</strong>s distinguant <strong>le</strong>s unes des autres-- la possibilité d’avoir une bonne interface avec <strong>le</strong>s utilisateurs -décrire de nombreux besoins différents en <strong>le</strong>sdistinguant <strong>le</strong>s uns des autres-.- la possibilité d’intégrer des connaissances d’interprétation et de contextualisation.60


CCC¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABLes raisonnements que l’on peut mener sur <strong>le</strong>s descriptions faites dans <strong>le</strong> langage correspondent à :- la possibilité d’organiser un mode de parcours de la description (méta-niveaux d’index etc.),- la possibilité d’automatiser la traduction de l’expression d’un besoin en une sé<strong>le</strong>ction de ressources.Le di<strong>le</strong>mme se traduit alors comme suit. Lorsqu’un langage permet de désigner, en <strong>le</strong>s distinguant <strong>le</strong>s unes desautres, de nombreuses ressources différentes, alors il est diffici<strong>le</strong> de construire dans ce langage desraisonnements permettant de déterminer l’utilité des ressources et de <strong>le</strong>s indexer.Lorsqu’un langage permet de décrire, en <strong>le</strong>s distinguant <strong>le</strong>s uns des autres, de nombreux besoins différents alorsil est diffici<strong>le</strong> de mener dans ce langage des raisonnements permettant de caractériser la ressource la plus uti<strong>le</strong>pour répondre à un besoin donné, et pour construire une indexation au niveau de l’expression des utilités.Lorsqu’on construit une indexation efficace, c’est-à-dire qui se parcourt rapidement, cela se fait au détriment dela richesse d’expression des besoins ou de description des ressources –il y a eu introduction d’arbitraire aumoment du choix des critères d’indexation et donc perte d’information-.Tout ce qui nécessite un langage riche pose dès lors problème. C’est <strong>le</strong> cas lorsque <strong>le</strong>s éléments décrits,ressources ou besoins, sont hétérogènes. C’est éga<strong>le</strong>ment <strong>le</strong> cas lorsque <strong>le</strong>s ressources décrites sont nombreuses :il faut alors un niveau de détail fin pour distinguer des ressources <strong>le</strong>s unes des autres.De même, tout ce qui nécessite beaucoup de raisonnement pose problème. C’est <strong>le</strong> cas lorsque <strong>le</strong>s ressourcessont « loin » de <strong>le</strong>ur utilisation : <strong>le</strong>s processus du transfert de connaissances sont comp<strong>le</strong>xes.En réponse à ce di<strong>le</strong>mme, plusieurs langages sont parfois combinés : un langage de description des ressourcesproche des ressources et un autre permettant de décrire <strong>le</strong>s utilités attendues. Le premier langage fournit des« poignées » permettant d’attraper <strong>le</strong>s ressources. Le deuxième langage organise ces « poignées » pour quel’utilisateur fasse rapidement son choix.2.1.1.3 Structure de l’état de l’art des techniquesL’obstac<strong>le</strong> principal dans <strong>le</strong> cas géographique, c’est-à-dire l’aide à l’accès d’utilisateurs à l’exploitation de BDG,est <strong>le</strong> fossé entre <strong>le</strong>s diverses représentations de l’espace géographique, construites par <strong>le</strong>s utilisateurs et <strong>le</strong>sproducteurs de BDG. Nous nous concentrons tout particulièrement sur <strong>le</strong> sous-objectif O1. Nous classons donc<strong>le</strong>s services d’aide suivant l’axe du transfert de connaissances. C’est ainsi que nous distinguons :<strong>le</strong>s services d’aide à l’accès aux données,ceux d’aide à l’accès aux informations,et ceux d’aide à l’accès aux connaissances.Les services d’aide à l’accès aux données (resp. aux informations, aux connaissances) sont en fait des démarchesqui facilitent l’exploration de l’espace des données (resp. des informations, des connaissances) qui pourraientêtre transférées depuis des lots extraits des ressources.Nous détaillons ci-dessous chacune de ces catégories de services.Un service d’aide à l’accès aux données permet en général à l’utilisateur de sé<strong>le</strong>ctionner une donnée qu’ilrecherche, comme <strong>le</strong>s coordonnées d’une personne dans un annuaire organisé par ordre alphabétique, <strong>le</strong>s « pagesblanches ».Un service d’aide à l’accès aux informations permet à l’utilisateur de sé<strong>le</strong>ctionner une ressource sur son contenuen informations : par exemp<strong>le</strong> « <strong>le</strong>s pages jaunes » organisent une exploration de coordonnées de professionnelsaux niveaux des informations de type « profession exercée ». Un autre exemp<strong>le</strong> est celui de la médiathèque oùl’on peut rechercher un document, indépendamment de sa forme (image, son, texte) en fonction d’un thème.Un service d’aide à l’accès aux connaissances permet à l’utilisateur de sé<strong>le</strong>ctionner une ressource en fonction dece qu’il veut faire avec. Un exemp<strong>le</strong> serait des pages jaunes dans <strong>le</strong>squel<strong>le</strong>s l’index serait « réparer des61


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABchaussures », « construire une maison », etc. Un exemp<strong>le</strong> effectif est <strong>le</strong> guide touristique dans <strong>le</strong>quel <strong>le</strong>s donnéessur une vil<strong>le</strong> sont organisées de la façon suivante : « où dormir ? », « où manger ? », « où sortir ? ».La construction d’un service d’aide dépend de plusieurs facteurs (aidant ou limitant).Un premier facteur est l’existence d’un fossé important entre <strong>le</strong>s connaissances des utilisateurs et l’expertise demanipulation des ressources. Dans ce cas il est nécessaire de centrer l’aide sur la fonctionnalité O1, c’est-à-dired’associer aux ressources des connaissances sur <strong>le</strong>ur contenu et <strong>le</strong>urs modes d’emploi.Un autre facteur est l’existence d’un langage de désignation des ressources tel que <strong>le</strong>s descriptions construitesdans ce langage sont faci<strong>le</strong>ment manipulab<strong>le</strong>s pour traduire un besoin d’utilisateur dans une tel<strong>le</strong> description. Onchoisit alors de construire une aide centrée sur <strong>le</strong>s descriptions dans ce langage. Par exemp<strong>le</strong>, pour ranger desartic<strong>le</strong>s dans un magasin, l' ordre des prix des artic<strong>le</strong>s est un ordre simp<strong>le</strong> mais qui n’est pas très exploitab<strong>le</strong> pourl’accès du client aux artic<strong>le</strong>s uti<strong>le</strong>s.Un dernier facteur, symétrique du précédent, est l’existence d’un langage de description des besoins tel que <strong>le</strong>sdescriptions de besoins dans ce langage s’organisent faci<strong>le</strong>ment et permettent une interaction simp<strong>le</strong> avec unutilisateur. Dans l’exemp<strong>le</strong> du rangement d’artic<strong>le</strong>s dans un magasin, une indexation possib<strong>le</strong> est par exemp<strong>le</strong>par type d’utilité car ces types s’organisent faci<strong>le</strong>ment –ce qui sert à se nourrir, ce qui sert à se distraire…-.2.1.2 L’aide à l’accès à l' information (données, informations,connaissances)2.1.2.1 L’aide à l’accès aux donnéesSont catégorisés dans notre état de l' art comme des services d' aide à l' accès aux données, <strong>le</strong>s services (d' aide àl' accès) tels que <strong>le</strong>ur contribution à O1 se limitent à signifier l' existence de la ressource et à désigner des lots quipeuvent en être émis. Ces services sont uti<strong>le</strong>s pour signifier à un utilisateur que <strong>le</strong>s ressources existent et où el<strong>le</strong>ssont, et éga<strong>le</strong>ment pour automatiser <strong>le</strong> parcours des lots qui peuvent être émis lorsqu' ils sont trop nombreux. Lefonctionnement de tels services est possib<strong>le</strong> lorsque l’utilisateur connaît la description, dans <strong>le</strong> langage utilisé par<strong>le</strong> service pour décrire <strong>le</strong>s ressources, de la ressource qu’il recherche.L’aide à l’accès à des données la plus élémentaire consiste à regrouper physiquement des pointeurs sur <strong>le</strong>sdonnées. Une étape ultérieure est de combiner ces listes de pointeurs avec des techniques de filtrage pourgérer la sé<strong>le</strong>ction de la ressource uti<strong>le</strong> : méthodes de gestion de requête, fichiers inversés, signatures,quadtrees [Siméon 95]. Sur Internet, <strong>le</strong>s moteurs de recherche <strong>le</strong>s plus élémentaires sont une aide à l’accèsaux données. Ils col<strong>le</strong>ctent automatiquement <strong>le</strong>s ressources, grâce à un modu<strong>le</strong> qui tourne en permanence, <strong>le</strong>sindexent par <strong>le</strong>s mots lus dans <strong>le</strong>ur fichier et proposent à l’utilisateur de formu<strong>le</strong>r une requête du type« groupe de mots-clés ».Une aide à l’accès aux données efficace consiste en un principe a priori de construction des ressources :l’utilisation d’un langage structuré pour organiser <strong>le</strong>s données, associé à des opérations de sé<strong>le</strong>ction qui peuventêtre menées sur <strong>le</strong>s descriptions faites dans ce langage. Par exemp<strong>le</strong>, l’algèbre relationnel<strong>le</strong> sert de base à denombreuses techniques d’optimisation de l’accès aux données dans des bases de données structurées.Une base de données est construite pour stocker et organiser un nombre important de données en vued’automatiser des traitements dessus. Il existe un schéma conceptuel de données qui permet d’interpréter <strong>le</strong>s62


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABdonnées mais <strong>le</strong>s langages de requête de données sont plus proches du schéma logique et donc nousconsidérons que <strong>le</strong>s SGBD sont une aide à l’accès aux données plus qu’à l’accès à l’information.Les SGBD sont une aide à l’accès aux données et non aux informations car l’utilisateur doitconnaître <strong>le</strong> schéma conceptuel de données pour comprendre ce que <strong>le</strong>s données peuvent luiapporter et exprimer son besoin d’information uti<strong>le</strong>.Les techniques de BD et SGBD répondent toutefois à divers contextes de l’accès à des données. Nous citonsci-dessous <strong>le</strong>s définitions correspondantes, issues de [Gardarin et Valduriez 90].« Base de données distante (remote database) : base de données située sur un calculateur autre que <strong>le</strong>calculateur de l’utilisateur et accédée grâce à des commandes de communication spécifiées par l’utilisateur. »Les exploitations rendues possib<strong>le</strong>s dans cet accès sont généra<strong>le</strong>ment la consultation des données, <strong>le</strong>sopérations de modification étant souvent centralisées.« Base de données répartie (distributed database) : ensemb<strong>le</strong> de bases de données coopérantes, chacunerésidant sur un site différent, vu et manipulé par l’utilisateur comme une seu<strong>le</strong> base de données centralisée.[..] Une base de données répartie homogène est une base de données répartie obtenue en divisant une base dedonnées en un ensemb<strong>le</strong> de bases de données loca<strong>le</strong>s, chacune étant gérée par <strong>le</strong> même SGBD. »[..] Une base de données répartie hétérogène est une base de données répartie obtenue en intégrant dans unebase de données unique un ensemb<strong>le</strong> de bases de données loca<strong>le</strong>s gérées par des SGBD différents. »« Base de données fédérée (federated database) : ensemb<strong>le</strong> de bases de données faib<strong>le</strong>ment couplées etautonomes qu’un utilisateur peut manipu<strong>le</strong>r à l’aide d’un langage spécifique.[..] Les bases de données loca<strong>le</strong>s ne sont pas intégrées en une seu<strong>le</strong> base mais plutôt interopérab<strong>le</strong>s, dans lalimite où el<strong>le</strong>s peuvent échanger des données et <strong>le</strong>s manipu<strong>le</strong>r ensemb<strong>le</strong> au moyen d’un langage multibases.[..] Langage multibase (multidatabase language) : Langage qui permet la définition de données multibases, ladéfinition des dépendances inter-bases, et la manipulation de données multibases. »[Gardarin et Valduriez 90] soulignent que l’intérêt des BD réparties hétérogènes et des BD fédérées est defournir une indépendance au SGBD. A ce niveau, <strong>le</strong> système fournit une aide proche de l’accès auxinformations puisque l’utilisateur n’accède pas aux données dans <strong>le</strong>ur formalisme d’origine mais dans celuiqui est uti<strong>le</strong> pour son application. La plupart des BD ne sont actuel<strong>le</strong>ment pas organisées en BD réparties oufédérées, du moins dans <strong>le</strong> domaine de l’information géographique. Si de tels systèmes sont attractifs, <strong>le</strong>urréalisation est très comp<strong>le</strong>xe.Les réseaux, tels que Internet sans tenir compte du Web, peuvent être considérés comme des systèmes d' aide àl' accès aux données puisqu' ils permettent l' accès physique à diverses données. Mais dans notre contexte, l' intérêtd' Internet réside dans l' apport du Web et nous en parlons dans la section suivante car il s' agit d' aide à l' accès àl' information.2.1.2.2 L’aide à l’accès aux informationsLes entrepôts de données et la fouil<strong>le</strong> de donnéesDes démarches visent à mieux organiser <strong>le</strong>s bases de données pour en dériver de l’information. Il s’agit duprocessus global Know<strong>le</strong>dge Discovery In Databases (KDD). Notons que <strong>le</strong> terme know<strong>le</strong>dge renvoie à uneacception plus généra<strong>le</strong> du terme connaissance que cel<strong>le</strong> que nous avons introduite en 1.2.1.2. Cette acception esten fait cel<strong>le</strong> du terme information (utilisé au singulier).63


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABUn processus élémentaire du KDD consiste à construire un entrepôt de données (en anglais, datawarehouse)c’est à dire : « une col<strong>le</strong>ction de données orientées sujet, intégrées, non volati<strong>le</strong>s et historiées, organisées pour <strong>le</strong>support du processus d' aide à la décision», selon la définition utilisée dans [Lefébure et Venturi 98].Un autre processus du KDD est la phase d' extraction des connaissances à partir de ces entrepôts. Cette phases’appel<strong>le</strong> fouil<strong>le</strong> de données, plus connue sous <strong>le</strong> terme anglais data mining (DM). El<strong>le</strong> est définie comme : « ladécouverte de nouvel<strong>le</strong>s corrélations, tendances et modè<strong>le</strong>s par <strong>le</strong> tamisage d' un large volume de données»[Lefébure et Venturi 98]. [Zeitouni et Yeh 00] classent <strong>le</strong>s méthodes du DM en deux catégories : l’analyseexploratoire et la prédiction. Ces méthodes exploitent <strong>le</strong>s acquis des statistiques lorsque <strong>le</strong>s données sont desva<strong>le</strong>urs numériques et ceux de l’intelligence artificiel<strong>le</strong> lorsque <strong>le</strong>s données sont des va<strong>le</strong>urs symboliques.Dans <strong>le</strong> contexte d’aide à l’accès, <strong>le</strong>s techniques de KDD participent au transfert de connaissancesdes données vers l’utilisateur, par contre el<strong>le</strong>s n’offrent pas de mécanismes d’aide à la sé<strong>le</strong>ctiond’information uti<strong>le</strong>.Les infrastructures d’informationsLes infrastructures d’informations sont l’équiva<strong>le</strong>nt, à un niveau de description d’informations, du regroupementde pointeurs sur des données : il s’agit de regroupement de descriptions de ressources. El<strong>le</strong>s sont construites àdes niveaux nationaux ou international. L’infrastructure la plus célèbre est <strong>le</strong> Web. La constructiond’infrastructures d’information est liée à deux techniques :- La première consiste en un système de pointeurs sur <strong>le</strong>s ressources, sur <strong>le</strong> Web ce sont <strong>le</strong>s URL (UniformResource Locator, adresse et protoco<strong>le</strong> d' accès d' une ressource sur <strong>le</strong> Web).- La suivante consiste en un mode plus ou moins homogène de description de différentes ressources en termede contenu. Ces descriptions permettent de situer l' accès d' un utilisateur au niveau des informationscontenues dans la ressource.Plusieurs services d' aide à l' accès sont associés aux infrastructures d' information. La plus couramment utiliséesur <strong>le</strong> Web est <strong>le</strong> moteur de recherche. Ceux-ci se divisent en deux grandes catégories : <strong>le</strong>s moteurs de rechercheélémentaires –<strong>le</strong>s robots- et <strong>le</strong>s répertoires validés par l’homme. Nous considérons que <strong>le</strong>s robots appartiennent àla catégorie d’aide à l’accès aux données puisqu’ils permettent d’exprimer des requêtes désignant un motcontenu dans <strong>le</strong> document même indépendamment du sens que ce mot peut avoir dans <strong>le</strong> document. Par contre,<strong>le</strong>s répertoires tiennent compte de ce sens et constituent donc une aide à l’accès à des informations.Un autre service consiste à centraliser l’accès à plusieurs ressources qui sont susceptib<strong>le</strong>s d’être requêtées dansdes contextes proches : infrastructures sur des informations techniques, encyclopédies généra<strong>le</strong>s, réseaux derecherche, etc. Outre l’identification des sources d’informations pertinentes, ces démarches se concrétisent par lacréation d’un portail d’entrée sur ces sources. Dans ce domaine, l’information géographique est souvent utiliséecomme une clé d’accès, en particulier <strong>le</strong> nom d' un lieu auquel <strong>le</strong> contenu de la ressource est associé. Parexemp<strong>le</strong>, <strong>le</strong> système GIPSY analyse dans un document <strong>le</strong>s désignations de noms de lieux pour indexer ensuiteautomatiquement ce document dans un gazetier 1 [Larson 96]. Il ne s’agit pas là d’accès à des donnéesgéographiques mais du recours à l’information géographique pour organiser un accès. [Laurini and Thompson92] introduisent la métaphore d’« hypermap » pour structurer l’accès à de nombreuses informations grâce à <strong>le</strong>urslocalisations.Enfin, <strong>le</strong> « courtage » (brokering en anglais) d’informations ne consiste pas seu<strong>le</strong>ment à créer un portail uniquepointant sur plusieurs ressources mais aussi à offrir un accès unique à ces ressources comme si el<strong>le</strong>s étaient uneseu<strong>le</strong> ressource. Cela signifie qu' un utilisateur exprime un besoin non pas dans autant de langages qu' il existe deressources mais dans un langage unique. Le service de courtage propage alors la requête vers chaque ressource.1 Le terme gazetier est utilisé à la place du mot anglais gazetteer, et de façon équiva<strong>le</strong>nte à l’expression index géographique.64


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABUne étape délicate dans <strong>le</strong>s infrastructures d'information est de construire <strong>le</strong> langage de description et de décrireeffectivement <strong>le</strong>s ressources. Dans la suite de cette section, nous présentons <strong>le</strong>s langages dédiés à lareprésentation et à la manipulation d'informations. Nous présentons ensuite <strong>le</strong>s langages spécifiquement dédiés àla description de ressources en information : <strong>le</strong>s métadonnées.Les langages de description d’informationsIl existe des langages qui ne sont pas dédiés à stocker des données et à optimiser des opérations de sé<strong>le</strong>ction maisplutôt à construire des ressources, et à optimiser des opérations d’interprétation sur ces ressources.Les logiques de description sont par exemp<strong>le</strong> souvent utilisées pour construire des bases de connaissances en IA.La structure proposée par de tels langages ne vise pas à permettre des opérations de sé<strong>le</strong>ction, il ne s'agit pas delangage comp<strong>le</strong>t comme <strong>le</strong> langage relationnel utilisé dans <strong>le</strong>s SGBDR, mais el<strong>le</strong> permet de nombreusesinférences que la structure relationnel<strong>le</strong> ne permet pas. Il s'agit de modè<strong>le</strong>s dits semi-structurés. Ces modè<strong>le</strong>s sontbeaucoup employés pour représenter des sources hétérogènes [Siméon 99].Un autre exemp<strong>le</strong> entrant dans cette catégorie de notre état de l'art des langages de description d'information est<strong>le</strong> langage HTML, HyperText Markup Language, utilisé pour construire une ressource Web. Les documentsHTML ont une structure explicitées sous forme de balises. Cette structure est dédiée à l'affichage de ces pagesHTML dans des navigateurs Web. Le langage XML, eXtensib<strong>le</strong> Markup Language, est un langage standardd’échange d’informations, conçu pour <strong>le</strong> Web mais pouvant être utilisé dans d'autres contextes [W3C/XML/WG00]. C’est un langage à balises comme HTML. Alors que HTML propose une structure dédiée à la présentationdu document, XML ne propose pas une structure unique mais des mécanismes d’écriture de structure. Unestructure XML est exprimée sous forme d’une DTD, document type definition, ou d’un XMLSchema. XML estutilisé pour structurer un document en vue de manipulations autres que sa présentation sur <strong>le</strong> Web. DAML,DARPA Agent Markup Language, est un langage étendant XML pour décrire plus simp<strong>le</strong>ment <strong>le</strong>s liens entreobjets.Enfin, dans <strong>le</strong> domaine de l’informatique, <strong>le</strong>s langages orienté-objet sont des langages que nous classons danscette section car ils sont plus intéressants dans une perspective d’expressivité que la technique relationnel<strong>le</strong>. Parcontre ces langages n’offrent pas <strong>le</strong>s propriétés d’accès rapide aux données liées aux opérations possib<strong>le</strong>s dansl’algèbre relationnel<strong>le</strong>. Notons de plus que ces langages ont une fonctionnalité de fédération de ressources. Unlangage orienté-objet permet en effet de fédérer des objets différents en créant une classe regroupant <strong>le</strong>urscaractéristiques communes et en représentant chaque objet comme une instance de cette classe. Il permetéga<strong>le</strong>ment de fédérer des classes ayant des éléments communs –variab<strong>le</strong>s ou méthodes- en créant une sur-classedont el<strong>le</strong>s héritent. Il permet éga<strong>le</strong>ment de fédérer des classes non pas sur <strong>le</strong>ur contenu mais sur <strong>le</strong>urmanipulation en <strong>le</strong>s faisant hériter d’une classe abstraite : <strong>le</strong>s noms des méthodes sont définies au niveau de cetteclasse abstraite mais <strong>le</strong>ur contenu est spécifié dans chaque sous-classe.Les langages et modè<strong>le</strong>s présentés ci-dessus sont instanciés « à la main » pour construire ou décrire des données.Il existe aussi des modè<strong>le</strong>s de dérivation d’informations associés à des fonctions de mesure spécifiques quidérivent <strong>le</strong>s informations des données pour valuer <strong>le</strong> modè<strong>le</strong>. Par exemp<strong>le</strong>, <strong>le</strong>s techniques de modélisation et demesure floue permettent d’avoir accès à une information en étant moins dépendant des va<strong>le</strong>urs mêmes maisplutôt de l’interprétation qu’on en fait. Les modè<strong>le</strong>s statistiques, eux, permettent de réduire un grand ensemb<strong>le</strong> dedonnées à des comportements et va<strong>le</strong>urs significatives. Ces modè<strong>le</strong>s sont exploités dans <strong>le</strong>s techniques de datamining.65


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABLes langages de description de ressources, <strong>le</strong>s métadonnéesIl existe éga<strong>le</strong>ment des langages qui servent non pas à construire une ressource en information mais à décrire desressources disponib<strong>le</strong>s. Les descriptions des ressources sont généra<strong>le</strong>ment appelées métadonnées.Les métadonnées sont des « données relatives à d’autres données et destinées à supporter des traitementsimpliquant ces autres données» [Ro<strong>le</strong> 99]. L’auteur ajoute que « même si el<strong>le</strong> est utilisée dans un grand nombred’artic<strong>le</strong>s, il semb<strong>le</strong> ne pas exister de définition vraiment formel<strong>le</strong> et précise de cette notion, ce qui est sans doutedû à sa grande généralité. » La plupart du temps, <strong>le</strong> langage utilisé pour construire des métadonnées est unlangage champ-va<strong>le</strong>ur. Pratiquement, remarquons qu’une métadonnée sur une ressource est :- une donnée qui porte une information sur la ressource qui ne peut pas être retrouvée dans la ressourcemême,- ou une donnée qui porte une information qui peut être retrouvée dans la ressource, mais cela permetd’exploiter cette information au niveau de la métadonnée sans avoir à manipu<strong>le</strong>r la ressource el<strong>le</strong>-même.[Kashyap 97] propose une classification des types de métadonnées :- <strong>le</strong>s métadonnées dépendantes du contenu (ex : la langue employée dans un document),- <strong>le</strong>s métadonnées descriptives du contenu (ex: <strong>le</strong>s thèmes abordés dans un document),- <strong>le</strong>s métadonnées indépendantes du contenu (ex : la date de création d’un document).Une autre classification porte sur <strong>le</strong>s communautés utilisant <strong>le</strong>s métadonnées, [Ro<strong>le</strong> 99], Figure 23.CommunautéUtilisation- créer des index permettant d’effectuer des recherches documentaire précises(métadonnées du Dublin Core utilisées dans des robots de recherche)Acteurs du Web- bloquer l’accès à certains sites (métadonnées PICS utilisées dans desprogrammes de filtrage de l’information)- authentifier un document- gérer <strong>le</strong>s droits- représenter des correspondances entre attributs et contribuer à l’interopérabilitéentre bases hétérogènes- générer dynamiquement des requêtes SQL à destination de bases dont <strong>le</strong>schéma est a priori inconnuBases de données - identifier <strong>le</strong>s ressources intéressantes à consulter- associer à une base de données multimédia des métadonnées permettantd’effectuer une corrélation entre des données de types différents- associer à des bases de données accessib<strong>le</strong>s en mode client/serveur desmétadonnées permettant à des clients ne connaissant pas a priori <strong>le</strong>scaractéristiques de ces bases de <strong>le</strong>s interrogerEdition é<strong>le</strong>ctronique - structurer de vastes corpus de textesInformatique “décisionnel<strong>le</strong>”et informatique de gestion- gérer des entrepôts de donnéesObjets distribués - fournir des informations sur <strong>le</strong>s méthodes de façon à permettre une invocationdynamique de ces dernièresFigure 23 : Communautés utilisant des métadonnées, d’après [Ro<strong>le</strong> 99]. [Figure 23 : Communities usingmetadata, after [Ro<strong>le</strong> 99]]Ces ressources étant décrite en termes d' informations, <strong>le</strong>s langages utilisés pour construire des métadonnéespeuvent être des langages de description d' information tels que ceux décrits dans la section précédente. Parail<strong>le</strong>urs, pour associer des métadonnées à une ressource existante, il est parfois possib<strong>le</strong> de s' appuyer sur <strong>le</strong>langage qui a servi à construire la ressource. Ces notions sont résumées sur <strong>le</strong> tab<strong>le</strong>au Figure 24.Ainsi, une métadonnée naturel<strong>le</strong> d' un document XML est sa DTD. Cette DTD peut éga<strong>le</strong>ment servir à désignerdes portions du document, correspondant à certaines balises, comme étant des métadonnées. De même, pourdécrire un document HTML, certains moteurs de recherche se réfèrent à la DTD de HTML et décrivent undocument HTML par des portions particulières de ce document –i.e. <strong>le</strong>s zones de textes- figurant entre <strong>le</strong>s balisestitre, <strong>le</strong>s balises résumé, ou encore entre <strong>le</strong>s balises indiquant des liens hypertexte. Il constitue alors des indexassociant à un mot <strong>le</strong>s URL des pages Web dans la description desquel<strong>le</strong>s figure ce mot-clé [Chartron 97].L’utilisateur exprime une requête par mots-clés que <strong>le</strong> moteur compare aux indexes. C’est ce qui est désignécomme text retrieval dans [Guarino et al. 99]. Les auteurs ajoutent que des travaux s’appuyant sur l’analyse des66


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABcooccurrences, l’analyse morphologique et <strong>le</strong>s racines des mots permettent de donner de bonnes performances àces systèmes. Les limites de tels systèmes restent <strong>le</strong> bruitage de la description et la pauvreté de l’expression derequêtes.Les métadonnées jouent un rô<strong>le</strong> important dans la fédération des ressources sur un domaine grâce à la mise enplace de standards de métadonnées dédié à ce domaine. Le plus générique, c' est-à-dire adapté à une grandevariété de ressources, préconisé par <strong>le</strong> consortium W3C, est <strong>le</strong> RDF, Resource Description Framework. Celangage standardise la description de certaines propriétés d' une ressource comme l' auteur ou la date de création.Le Dublin Core est un standard célèbre dédié aux documents textuels [Weibel et al. 95]. Cette démarche,entreprise en mars 1995 lors d’une conférence en Ohio, veut corriger <strong>le</strong>s faib<strong>le</strong>sses des descriptions dedocuments HTML construites classiquement par <strong>le</strong>s moteurs de recherche. Le Dublin Core définit des balisesHTML META particulières : <strong>le</strong> Sujet (thème de l’objet), <strong>le</strong> Titre, l’Auteur, l’Editeur, <strong>le</strong>s Autres agents, la Datede publication, <strong>le</strong> Type (par exemp<strong>le</strong> roman ou poème), <strong>le</strong> Format informatique, l’Identifiant, une Relation(quand <strong>le</strong> document fait partie d’un document plus général), la Source (lien vers un document de même contenuintel<strong>le</strong>ctuel mais précédent), la Langue, <strong>le</strong>s Couvertures spatia<strong>le</strong> et temporel<strong>le</strong>.Ce standard peut être utilisé pour enrichir un document HTML textuel en y ajoutant ces balises, ou pour créer undocument HTML comportant ces balises et comportant une référence à un document textuel non HTML, commeun livre papier.RessourceMétadonnéesStandard deMétadonnéesutiliséDocument HTMLMots figurant dans<strong>le</strong>s sections et dudocumentDocument HTMLrespectant <strong>le</strong> DC Livre papier Document XMLVa<strong>le</strong>urs des balisesdu DC dans laressourceDocument HTMLcomportant <strong>le</strong>sbalises du DC et<strong>le</strong>urs va<strong>le</strong>urs pour<strong>le</strong> livre, et uneréférence versl'emplacement dulivreDTD utilisée pourécrire <strong>le</strong>documentAucun Dublin Core (DC) DC Aucun La DTDDocument XML écritavec une DTDcomportant des balisesspécifiques demétadonnéesVa<strong>le</strong>urs des balisesspécifiquesFigure 24 : Divers mécanismes de description de documents. [Figure 24 : Varied mechanisms to describedocuments on the Web.]Le principal problème des métadonnées est que la construction de ces descriptions pour <strong>le</strong>s ressources existantesest une entreprise coûteuse. Or l’efficacité des systèmes de recherche s’appuyant sur des métadonnées reposentsur <strong>le</strong> principe que <strong>le</strong>s producteurs de ressources acceptent des métadonnées de <strong>le</strong>urs ressources, conformes austandard de métadonnées. L’enjeu est tel que <strong>le</strong>s courteurs d’information n’hésitent pas à la prendre en charge[Guarino et al. 99].Lorsque des métadonnées sont employées pour gérer l’accès à des ressources, il est nécessaire qu’el<strong>le</strong>spermettent de décrire suffisamment précisément ces ressources, qu’el<strong>le</strong>s donnent la possibilité de distinguer desressources <strong>le</strong>s unes des autres et de tenir compte de cette distinction au moment où on cherche la ressource laplus uti<strong>le</strong> pour répondre à un besoin. Lorsque <strong>le</strong>s ressources sont nombreuses, cela nécessite une assez grandespécificité des métadonnées, c’est-à-dire qu’el<strong>le</strong>s vont prendre <strong>le</strong>ur sens dans un domaine limité. Pour êtreefficace, la recherche d’information basée sur <strong>le</strong>s métadonnées fonctionne souvent sur un domaine donné. Ainsi,il existe des métadonnées spécifiques à des domaines, par exemp<strong>le</strong> la précision de données scientifiques ou <strong>le</strong>sdroits d’accès. Le Warwick Framework améliore <strong>le</strong> standard du Dublin Core en définissant des paquets demétadonnées dédiés à la description de certains types de ressource [Lagoze et al. 96]. Le Dublin Core, regroupédans <strong>le</strong> paquet DC, est dédié au catalogage de documents textuels. Concrètement, <strong>le</strong> titre est codé comme :.67


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABUtilisateurSous-objectifs génériquesde l’aide à l’accèsNavigation dansclassification thématiqueou expressionde mots-clésMoteur de rechercheexploitantdesmétadonnéesO5 : S’adresser à desutilisateurs diversVa<strong>le</strong>urs des champs demétadonnéesO1 : Construirel’espace destransfertO2 : Sé<strong>le</strong>ctionnerl’information uti<strong>le</strong>O3 : Traduire unesé<strong>le</strong>ctiond’information uti<strong>le</strong> enune sé<strong>le</strong>ction de lotà acquérirComparaison des va<strong>le</strong>urs demétadonnées du besoinutilisateur et desmétadonnées effectivesMétadonnéesO4 : Fédérer desressourcesFichiers inversésRessourceFigure 25 : Techniques mises en œuvre pour aider l’accès d’utilisateurs à des informations dans <strong>le</strong>s moteurs derecherches utilisant des métadonnées. [Figure 25 : Users’ access techniques in search engines relying onmetadata.]Les modu<strong>le</strong>s d’interprétation de requêtesIl est possib<strong>le</strong> d’utiliser des bases de données spécifiques pour interpréter des requêtes d’utilisateurs, c' est-à-direpour relier <strong>le</strong>s mots utilisés dans la requête avec <strong>le</strong>s termes utilisés dans la description des ressources, parexemp<strong>le</strong> <strong>le</strong>s va<strong>le</strong>urs de métadonnées. Une tel<strong>le</strong> base de données est un thesaurus, qui associe des mots à desconcepts et explicite des relations entre mots, comme la synonymie, ou entre concepts, comme la composition oula généralisation. Un thesaurus peut comporter des définitions de mots comme un dictionnaire, mais il comporteessentiel<strong>le</strong>ment des informations permettant de situer un mot par rapport à d’autres.Un thesaurus célèbre sur <strong>le</strong> Web est Wordnet développé au Cognitive Science Laboratory de PrincetonUniversity [Mil<strong>le</strong>r 98]. Il est utilisé dans <strong>le</strong> prototype de [Guarino et al. 99] comme modu<strong>le</strong> d’interprétation derequêtes. Wordnet est une base de données <strong>le</strong>xicographique portant sur la langue anglaise et disponib<strong>le</strong>gratuitement. Cette base est actuel<strong>le</strong>ment étendue en une base multilingue, EuroWordnet [Vossen et al. 97].Wordnet comporte des mots, et des ensemb<strong>le</strong>s de mots synonymes, <strong>le</strong>s synsets, associés à des concepts. Ilcomporte éga<strong>le</strong>ment des informations supplémentaires comme <strong>le</strong>s types des concepts (noms, verbes, adjectifs) etdes relations entre mots ou concepts. Ces relations sont :- la synonymie ou l’antonymie entre mots,68


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"AB- <strong>le</strong>s relations hiérarchiques entre concepts, par exemp<strong>le</strong> un pigeon est plus spécifique qu’un oiseau,- <strong>le</strong>s relations partitives entre concepts, par exemp<strong>le</strong> <strong>le</strong> nerf optique fait partie du système nerveux, Paris estinclus dans la France.Pour être efficaces, de tels modu<strong>le</strong>s d’interprétation doivent fonctionner sur des thèmes spécifiques. Dansl’architecture de bibliothèque virtuel<strong>le</strong> décrite par [Papazoglou and Hoppenbrouwers 99], des ressources sontindexées par des termes et des bases de connaissances sont utilisées pour traiter une requête d’utilisateur selontrois niveaux :- Les thèmes, par exemp<strong>le</strong> “micro-économie”, “macro-économie”, “économie de développement”.- Les concepts, par exemp<strong>le</strong> des concepts associés au thème “micro-économie” sont “modè<strong>le</strong> de marché”,“économie industriel<strong>le</strong>”, “économie des ménages”.- Les termes, par exemp<strong>le</strong> des termes associés au concept “modè<strong>le</strong> de marché” sont “monopo<strong>le</strong>”, “oligopo<strong>le</strong>”.L’utilisation de tels modu<strong>le</strong>s d’interprétation permet aux utilisateurs d’exprimer <strong>le</strong>urs requêtes dans <strong>le</strong>urs propressyntaxes et contribue donc à O5, l’aide à l’accès d’utilisateurs divers. Notons que la constitution de dictionnairespeut servir à partager une syntaxe mais aussi à partager une conceptualisation. La construction de bases deconnaissances servant à partager des connaissances sur un domaine donné sera détaillée dans la section 2.1.3.2portant sur <strong>le</strong>s démarches d’aide au raisonnement formel.2.1.2.3 L’aide à l’accès aux connaissancesLes démarches d' aide à l' accès aux connaissances sont <strong>le</strong>s démarches qui permettent que des ressourcess' intègrent dans un raisonnement mené par l' utilisateur. Différents types de raisonnements sont distingués en IA[Haton et al. 91]. Ils font écho aux activités menta<strong>le</strong>s de l’homme que <strong>le</strong>s chercheurs en IA ont voulu reproduire.Une aide à l’accès à des connaissances peut se faire en favorisant l’un ou l’autre raisonnement sur desressources.Le raisonnement par analogie est un raisonnement très répandu chez l’homme, mais diffici<strong>le</strong> à reproduire. Ilrepose sur l’usage de métaphore. Une métaphore est une correspondance entre un domaine source –sur <strong>le</strong>quel onsait raisonner- et un domaine cib<strong>le</strong> –sur <strong>le</strong>quel on ne sait pas raisonner-. Le résultat de raisonnements effectuéssur des éléments du domaine source, et qui appartient lui-même à ce domaine source, est mis en correspondanceavec <strong>le</strong> résultat de raisonnements similaires qui seraient effectués avec <strong>le</strong>s éléments du domaine cib<strong>le</strong>correspondants aux éléments du domaine source sur <strong>le</strong>squels ont été mené <strong>le</strong> premier raisonnement. La plupartdes structures que nous utilisons sont issues de métaphores [Kuhn and Frank 91]. Le domaine source privilégiéest celui de nos expériences sensoriel<strong>le</strong>s et motriciel<strong>le</strong>s comportant des concepts et relations universels –surface,lien, chemin, proche, loin, partie, tout, …- [Mark 92].L’usage de métaphore est donc un mode privilégié d’accès au raisonnement sur un domaine, <strong>le</strong>domaine cib<strong>le</strong>. L’utilisation d’un domaine source accessib<strong>le</strong> à la plupart assure grandement O5.L' usage d' une métaphore présente pourtant un défaut majeur. Rigoureusement el<strong>le</strong> permet àl' utilisateur de ne mener que <strong>le</strong>s raisonnements prévus dans la construction de la métaphore. Or i<strong>le</strong>st tentant de mener des raisonnements courants sur <strong>le</strong> domaine source, non prévus dans laconstruction de la métaphore et qui ne correspondent à rien ou, et c' est là <strong>le</strong> danger, à unraisonnement faux dans <strong>le</strong> domaine cib<strong>le</strong>.Le raisonnement géométrique est étudié par <strong>le</strong>s recherches sur la reconnaissance et la manipulation d’objetsphysiques, typiquement <strong>le</strong> traitement d’images, la planification des mouvements d’un robot, la vision par69


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABordinateur. Nous n’avons pas trouvé de démarche entrant dans cette catégorie, hormis peut-être la production deschémas, graphes, cartes.Un autre type de raisonnement est <strong>le</strong> raisonnement par généralisation et abstraction, éga<strong>le</strong>ment très répandu chezl’homme. Les classifications thématiques, résultant souvent d’abstractions dans <strong>le</strong>s métadonnées, par exemp<strong>le</strong> laclassification de mots-clés de Yahoo, permettent à un utilisateur d’effectuer ce type de raisonnement.Certains systèmes construisent, au fur et à mesure de requêtes d’utilisateurs, des classes de consultationstypiques. Lorsqu’une personne utilise un système possédant de tel<strong>le</strong>s classes de consultations, <strong>le</strong> systèmedétermine la classe dans laquel<strong>le</strong> il peut ranger ce nouvel utilisateur. Il répond alors à l’utilisateur en tenantcompte de ce contexte qu’il a reconstruit, c’est-à-dire de la classe de consultation typique à laquel<strong>le</strong> appartientl’utilisateur. Par exemp<strong>le</strong>, <strong>le</strong> système indique alors à l’utilisateur des ressources qu’il n’a pas demandées maisqui « typiquement devraient l’intéresser ».Le site suivant applique des techniques de filtrage collaboratif pour conseil<strong>le</strong>r un utilisateur sur <strong>le</strong>s films à al<strong>le</strong>rvoir : http://www-po<strong>le</strong>ia.lip6.fr/~fconseil/. Ce conseil se fonde soit en regardant <strong>le</strong>s films proches de ceux quel’utilisateur est allé voir, soit en regardant <strong>le</strong>s films vus par <strong>le</strong>s utilisateurs qui lui ressemb<strong>le</strong>nt, soit en mixant <strong>le</strong>sdeux.Les services d’aides reposant sur <strong>le</strong>s capacités de raisonnement par généralisation et abstractiond’utilisateurs sont très efficaces pour O4, la fédération de ressources. Par contre, au sein d’uneclasse de la granularité la plus fine, l’utilisateur doit lui-même sé<strong>le</strong>ctionner <strong>le</strong>s ressources uti<strong>le</strong>sparmi cel<strong>le</strong>s appartenant à cette classe.Le raisonnement <strong>le</strong> mieux maîtrisé en IA est <strong>le</strong> raisonnement formel. Il s’agit de « la manipulation syntaxique destructures symboliques à l’aide de règ<strong>le</strong>s, dans <strong>le</strong> cadre d’une certaine sémantique» [Haton et al. 91]. Lasémantique est une fonction qui interprète ces structures symboliques et <strong>le</strong>urs manipulations.Dans un contexte d' aide à l' accès, <strong>le</strong> raisonnement est <strong>le</strong> processus d' accès. Les structures symboliquesmanipulées dans ce raisonnement peuvent être <strong>le</strong>s ressources mêmes ou des descriptions des ressources, ou dedescriptions des besoins d’utilisateurs.Les techniques d' aide au raisonnement formel permettent de construire <strong>le</strong>s structures symboliques explicitant <strong>le</strong>processus d' accès. El<strong>le</strong>s permettent aussi d' implémenter des composants qui réalisent des raisonnements formels(plus exactement, procéduraux), et de répartir un même raisonnement global entre plusieurs composants tels quechacun effectue la part du raisonnement qui correspond <strong>le</strong> mieux à ses compétences.Les techniques s’appuyant sur <strong>le</strong> raisonnement formel sont extrêmement intéressantes dans notretravail, nous <strong>le</strong>ur consacrons la section suivante, 2.1.3.Le raisonnement procédural est un cas particulier du raisonnement formel, où toutes <strong>le</strong>s connaissances, la façonde <strong>le</strong>s utiliser et la conduite du raisonnement sont figées. Les interfaces entre composants implémentés ont pourobjectif de permettre <strong>le</strong> raisonnement procédural d’un composant à l’aide de connaissances provenant d’un autrecomposant. L' aide au raisonnement procédural entre composants renvoie à la problématique de l’interopérabilitéintroduite section 1.2.1.1. Comme <strong>le</strong> souligne [Sheth 99]: « Any attempt to give a broad survey of informationsystems interoperability is difficult and comp<strong>le</strong>x for several reasons, including different <strong>le</strong>vels of requirements,the variety of approaches, the number of technical areas involved, the large literature, and the large number ofexamp<strong>le</strong> systems » ∗ . Nous ne cherchons pas à analyser en détail l’état de l’art des contributions àl’interopérabilité mais nous rappelons quelques résultats importants dans ce domaine.Cinq stratégies de base sont classiquement envisagées pour atteindre l’interopérabilité [Paepcke et al. 98][Abel etal. 99]:∗ Toute tentative pour résumer l’interopérabilité de systèmes d’information est diffici<strong>le</strong> et comp<strong>le</strong>xe pour plusieurs raisons qui comprennent :<strong>le</strong>s divers niveaux d’interopérabilité, la variété des approches, <strong>le</strong> nombre de domaines techniques impliqués, la littérature abondante et <strong>le</strong>nombre important d’exemp<strong>le</strong>s. (tda)70


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"AB- Les standards forts qui imposent une homogénéité à divers niveaux de l’architecture, comme par exemp<strong>le</strong>ISO802, TCP/IP, DOS, Z39-50, HTTP.- La famil<strong>le</strong> de standards communiquant entre eux. On essaye d’organiser <strong>le</strong>s standards en niveauxcommuniquants correspondant aux relations effectives entre <strong>le</strong>s éléments qu’on cherche à normaliser. C’est<strong>le</strong> cas par exemp<strong>le</strong> avec OSI.- L’approche du médiateur externe, qui fonctionne comme un interprète entre composants. Il s’agit del’équiva<strong>le</strong>nt de la fédération de bases de données pour des informations moins structurées : il peut s’agird’un moteur de recherche sur des pages HTML, d’un médiateur de données semi-structurées.- L’utilisation d’un langage commun de communication entre des modu<strong>le</strong>s, grâce à une spécificationrespectée par tous <strong>le</strong>s modu<strong>le</strong>s (cf. KIF, KQML, SETL).- La fonctionnalité mobi<strong>le</strong>, par exemp<strong>le</strong> <strong>le</strong>s app<strong>le</strong>ts java, <strong>le</strong>s éléments en langage LISP.[Sheth 99] constate une évolution dans <strong>le</strong>s démarches en interopérabilité, selon la façon dont sont traitées <strong>le</strong>snotions de distribution, d’autonomie et d’hétérogénéités.La 1 ère génération s’arrête environ en 1985. La distribution est réduite au contexte d’un système interne à uneentreprise. La plupart des systèmes de bases de données de cette période ont traité <strong>le</strong> choix de <strong>le</strong>ur autonomie (onpeut consulter [Sheth 99] pour <strong>le</strong>s différents niveaux d’autonomie d’un système) en fonction des contraintes demise à jour.La 2 ème génération court de 1985 à 1995 environ. Avec Internet, la distribution d’un système peut se faire entreplusieurs entreprises. Par contre <strong>le</strong>s systèmes de cette génération ne se sont pas préoccupés des notions de mise àjour et des problèmes précis d’autonomie.La 3 ème génération a commencé vers 1996. On ne par<strong>le</strong> plus de système distribué mais de système global, <strong>le</strong>sutilisateurs finaux ne voient pas la nature distribuée de ce qu’ils exploitent. Les enjeux de cette 3 ème générationcomprennent <strong>le</strong>s modes de visualisation, l’utilisation d’une variété de moyens de communication.Cette 3 ème génération gère plus l’interface avec <strong>le</strong>s utilisateurs finaux. Dans cette mesure el<strong>le</strong> se dégage duraisonnement procédural pour se rapprocher du raisonnement formel. Fina<strong>le</strong>ment, l’enjeu ultime del’interopérabilité entre acteurs numériques est qu’un acteur humain puisse <strong>le</strong>s faire travail<strong>le</strong>r ensemb<strong>le</strong>, <strong>le</strong>urassigner un objectif.2.1.3 L’aide au raisonnement formelCette section présente des avancées essentiel<strong>le</strong>s de l’Intelligence Artificiel<strong>le</strong> dans la formalisation duraisonnement et son automatisation. Nous pensons que ces travaux sont intéressants dans notre contexte carl’étude de l’automatisation du raisonnement formel doit permettre de comprendre jusqu’à quel point ceraisonnement est maîtrisé et révè<strong>le</strong> <strong>le</strong> contrô<strong>le</strong> que l’on possède sur <strong>le</strong>s connaissances intervenant dans ceraisonnement. Or la difficulté de l’aide au raisonnement est justement de contrô<strong>le</strong>r <strong>le</strong>s connaissances intervenantdans ce raisonnement.2.1.3.1 GénéralitésLa formalisation du raisonnementUne formalisation élémentaire d’un raisonnement consiste à expliciter <strong>le</strong> fil du raisonnement en question dansdes structures symboliques et des opérations sur ces structures, c' est-à-dire un modè<strong>le</strong> de résolution de problème.71


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABCela nécessite de décrire <strong>le</strong>s états du domaine du problème (par exemp<strong>le</strong>, la position de pions sur un jeu dedames), <strong>le</strong>s actions possib<strong>le</strong>s pour passer d'un état à un autre (<strong>le</strong>s manières possib<strong>le</strong>s de bouger un pion), <strong>le</strong>sdécisions prises pendant <strong>le</strong> raisonnement (la stratégie du joueur de dames et son application au choix d'uneaction).Rappelons que dans notre contexte nous ne voulons pas aider un raisonnement particulier mais unensemb<strong>le</strong> de raisonnements particuliers : <strong>le</strong>s processus d'accès de chaque utilisateur potentiel.Dans ce contexte spécifique, un modè<strong>le</strong> efficace doit convenir pour décrire tous ces raisonnements.Lorsque l'ensemb<strong>le</strong> de ces raisonnements est trop grand pour être explicitement décrit, <strong>le</strong> modè<strong>le</strong>doit décrire explicitement certains raisonnements génériques et posséder des connaissances despécification qui permettent d'adapter <strong>le</strong> modè<strong>le</strong> à chaque raisonnement particulier de cet ensemb<strong>le</strong>(<strong>le</strong> processus d'accès d'un utilisateur particulier).Les premières expériences de formalisation du raisonnement formel avaient pour but de faire raisonner desmachines. Les limites des systèmes ainsi construits ont rapidement conduit à la conclusion suivante : l’homme arecours à d’autres connaissances que cel<strong>le</strong>s décrivant directement <strong>le</strong> problème pour raisonner. Il s’agit del’expertise. L’expertise dans un domaine est un ensemb<strong>le</strong> de connaissances permettant de résoudre <strong>le</strong>s problèmesde ce domaine.D'autres principes ont ensuite été mis en évidence. L'expertise d'un domaine ne se réduit pas à des connaissancesdéclaratives. Le contrô<strong>le</strong> de la résolution d'un problème fait éga<strong>le</strong>ment partie de cette expertise, c'est-à-dire qu'i<strong>le</strong>st spécifique au problème. Cela rend extrêmement comp<strong>le</strong>xe la traduction de l'expertise d'un homme dans unformalisme car on ne possède a priori pas de structure générique de cette expertise permettant de guider cettetraduction.En réponse à cela, l’acquisition des connaissances vise à élaborer des méthodes pour reconstruire formel<strong>le</strong>ment<strong>le</strong> savoir d’un expert. El<strong>le</strong> se situe entre deux pô<strong>le</strong>s : <strong>le</strong> pô<strong>le</strong> de l’expert humain, étudié par <strong>le</strong> génie cognitif, et <strong>le</strong>pô<strong>le</strong> de la machine, étudié par <strong>le</strong> génie logiciel [Le Roux 94].Les points intéressants des formalismes mis en place par l’acquisition des connaissances sont :- <strong>le</strong> traçage du raisonnement,- la possibilité de faire des systèmes multi-experts c’est-à-dire dont la connaissance est organisée en plusieursmodu<strong>le</strong>s d’expertise participant à des phases différentes du raisonnement,- la possibilité de faire de l’IA distribuée c’est-à-dire de répartir l’activité de raisonnement non pas entre unhomme et une machine mais entre plusieurs machines.Ces principes correspondent à un recentrement des objectifs de l’IA des machines vers <strong>le</strong> raisonnement del’homme. Comme <strong>le</strong> rappel<strong>le</strong> [Aussenac 89], <strong>le</strong>s enseignements de l'IA ont rapidement remis en question <strong>le</strong>principe « tout comprendre à partir d’une théorie puis tout automatiser ». La démarche de construction d’unsystème à base de connaissances repose maintenant davantage sur la définition de « comment l’intelligence vaêtre partagée entre un agent-machine et un agent-humain ». L’auteur de [Aussenac 89] renvoie à l’affirmation deG. Boy : « l’optimum pour <strong>le</strong> système ne se situe pas au degré d’automatisation maximum, mais à un pointd’automatisation qui optimise <strong>le</strong> résultat de son utilisation par l’agent-humain . »Aider <strong>le</strong>s hommes à raisonner peut aussi signifier « aider <strong>le</strong>s hommes à raisonner ensemb<strong>le</strong> ». Pour reprendre laformulation de G. Boy, nous pouvons dire que la formalisation de connaissances se focalise non seu<strong>le</strong>ment sur <strong>le</strong>partage de l’intelligence entre un agent-humain et un agent-machine mais éga<strong>le</strong>ment sur <strong>le</strong> partage del’intelligence entre plusieurs agents-humains. Un troisième pô<strong>le</strong> de l’acquisition des connaissances, outre <strong>le</strong> pô<strong>le</strong>de l’expert humain et celui de la machine, est donc <strong>le</strong> pô<strong>le</strong> de la communauté d’experts ou d’hommes. Ce pô<strong>le</strong>renvoie essentiel<strong>le</strong>ment à une réduction des différences de subjectivité entre hommes pour atteindre un72


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABconsensus. Le consensus est atteint lorsqu’il n’y a plus d’incohérences entre <strong>le</strong>s connaissances possédées par <strong>le</strong>suns et <strong>le</strong>s autres, et non lorsque <strong>le</strong>s hommes possèdent tous <strong>le</strong>s mêmes connaissances.Une nouvel<strong>le</strong> catégorisation des connaissances : <strong>le</strong> « QUOI » et <strong>le</strong>« COMMENT »Parmi d' autres, [Gomez and Benjamins 99] énoncent un principe majeur en acquisition des connaissances :"prob<strong>le</strong>m solving methods and ontologies can be seen as comp<strong>le</strong>mentary reusab<strong>le</strong> components to constructknow<strong>le</strong>dge systems from reusab<strong>le</strong> components." ∗Ce principe est doub<strong>le</strong>. 1) Il y a deux catégories de connaissances, et un composant réutilisab<strong>le</strong>doit appartenir à l' une de ces catégories. 2) Ces catégories sont complémentaires : touteconnaissance peut être décomposée en une partie de connaissances de résolution de problème, etune partie de connaissances ontologiques.Cette séparation en deux catégories, qui veut dépasser <strong>le</strong>s limites de l' ancienne séparation déclaratif-procédural,est souvent appelée <strong>le</strong> QUOI et <strong>le</strong> COMMENT [Le Roux 94] :- <strong>le</strong> QUOI correspond à la description d’un domaine d’intérêt, ce sont <strong>le</strong>s connaissances factuel<strong>le</strong>s d’undomaine,- <strong>le</strong> COMMENT porte sur <strong>le</strong>s modes de manipulation du QUOI pour produire de nouvel<strong>le</strong>s connaissancesvenant enrichir ce QUOI. Il s’agit des connaissances de résolution de problème.Cette séparation est justifiée par <strong>le</strong> problème d'interaction : "the interaction prob<strong>le</strong>m states that representingknow<strong>le</strong>dge for the purpose of solving a prob<strong>le</strong>m is strongly affected by the nature of the prob<strong>le</strong>m and theinference strategy to be applied to the prob<strong>le</strong>m" ∗ [Gomez and Benjamins 99]. Les représentations qui mélangentdu contenu avec des structures dédiées à une manipulation donnée peuvent rendre diffici<strong>le</strong> la réutilisation ducontenu décrit dans une autre manipulation.La prise en compte de ce problème d' interaction est intéressante dans un contexte d' aide à l' accès àdes ressources car el<strong>le</strong> se traduit par la séparation, au sein d' une description, du contenu desressources de <strong>le</strong>ur manipulation. Cela permet qu' une même ressource puisse être associée àplusieurs manipulations possib<strong>le</strong>s, c' est-à-dire puisse répondre à divers besoins. Cela permet aussid' appliquer à des ressources variées une même expertise de manipulation.2.1.3.2 La modélisation axée sur <strong>le</strong> QUOI : <strong>le</strong>s ontologies de domaineLes modè<strong>le</strong>s de type QUOI visent à décrire, dans des expressions symboliques, des parties du monde. Cesmodè<strong>le</strong>s, appelés ontologies, sont utilisés pour construire des descriptions très généra<strong>le</strong>s ou dans <strong>le</strong>s limites d’undomaine d’intérêt. Dans un contexte d' aide à l' accès, ils sont utilisés pour fédérer des ressources ou pourconstruire des modu<strong>le</strong>s d' interprétation de requêtes d' utilisateurs. Ces techniques ont été décrites dans la section2.1.2.2. Nous revenons dans cette section sur <strong>le</strong>s apports de l' acquisition des connaissances sur la constructiond' ontologies.∗ Les méthodes de résolution de problèmes et <strong>le</strong>s ontologies peuvent être considérés comme des composants complémentaires réutilisab<strong>le</strong>spour construire des composants de connaissances qui puissent être partagés. (tda)∗ Le problème d' interaction signifie que la représentation de connaissances en vue de résoudre un problème est fortement affectée par lanature du problème et de la stratégie d' inférence employée. (tda)73


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABLa notion d’ontologieLe fondement théorique de ces démarches est la notion d’ontologie en philosophie Le mot ontologie semb<strong>le</strong> unpeu compliqué sans doute parce qu’il a plusieurs acceptions –en philosophie, en métaphysique, en intelligenceartificiel<strong>le</strong>…- et qu’il n’est pas entré dans <strong>le</strong> langage courant. Nous rappelons rapidement son sens enphilosophie : « branche des sciences métaphysiques qui étudie la nature et <strong>le</strong>s propriétés et relations essentiel<strong>le</strong>sde ce qui est en tant que tel, ou des principes et causes d’existence » (définition du dictionnaire Webster). Lamétaphysique est el<strong>le</strong>-même définie comme « la science de l’existant en référence à ses conditions abstraites etuniversel<strong>le</strong>s, à distinguer de la science de l’existence déterminée et concrète ».Pratiquement, la notion d’ontologie renvoie à l’expérience commune de l’homme et à une catégorisationuniversel<strong>le</strong> du monde. En effet, face au monde réel, l’homme se livre à des abstractions. Il s’agit pour lui deproduire des objets pour représenter <strong>le</strong> monde par des informations qu’il peut conserver, manipu<strong>le</strong>r dans unraisonnement et communiquer. La première activité d’abstraction est la discrimination assortie de lacatégorisation puis de la classification. L’idée est de décrire <strong>le</strong> monde en termes de concepts abstraitssuffisamment isolés <strong>le</strong>s uns des autres pour que l’on puisse dans la plupart des cas décider si un objet du monderéel « est » une instance de tel ou tel concept. Par exemp<strong>le</strong>, pour décrire un paysage à quelqu’un, il est simp<strong>le</strong> derecourir au concept « arbre » -renvoyant ainsi à une image typique de ce concept chez l’interlocuteur- plutôt quede décrire chaque arbre du paysage un à un avec ses caractéristiques particulières. Cet iso<strong>le</strong>ment des conceptsabstraits <strong>le</strong>s uns par rapport aux autres ne signifie pas que <strong>le</strong> sens d’un concept est intrinsèque et indépendant desautres.La notion d’ontologies utilisées en IA renvoie à des formalisations produites pour approcher cette catégorisationabsolue désignée par ontologie en philosophie. [Chandrasekaran et al. 98] proposent une définition détaillée duterme ontologie en IA.« In AI, the term [ontology] has largely come to mean one of two related things :- A representation vocabulary, typically specialised to some domain or subject matter. Moreprecisely, it is not the vocabulary as such that qualifies as an ontology, but the conceptualisationsthat the term in the vocabulary are intended to capture. [..] Identifying such terms –and theunderlying conceptualisations—generally requires careful analysis of the kinds of objects andrelations that can exist in the domain.[..]- Occasionally, a body of know<strong>le</strong>dge describing some domain, typically a common sense know<strong>le</strong>dgedomain, using such a representation vocabulary. » ∗Nous considérons ici qu’une ontologie est la conceptualisation sous-jacente à un vocabulaire. En cela nousadoptons <strong>le</strong> point de vue de [Gruber 93] très répandu dans <strong>le</strong>s systèmes d’information : « une ontologie est laspécification explicite d’une conceptualisation ». Cette définition correspond au premier type d’ontologiesprésenté par [Chandrasekaran et al. 98]. La base d’instances associée à une tel<strong>le</strong> ontologie correspond audeuxième type.[Chandrasekaran et al. 98] rappel<strong>le</strong>nt que <strong>le</strong> premier intérêt des ontologies est de clarifier la structure de laconnaissance. L’analyse ontologique d’un domaine de connaissance doit précéder la représentation de cesconnaissances et permettre d’éviter <strong>le</strong>s incohérences lors de la construction de la base de connaissances.[Guarino 98] puis [Guarino and Welty 00] définissent des principes essentiels pour construire des ontologiessaines et exploitab<strong>le</strong>s. Cela consiste à gérer rigoureusement <strong>le</strong>s notions d’identité et d’unité représentées dansl’ontologie. Les auteurs de [Chandrasekaran et al. 98] donnent un exemp<strong>le</strong> d’incohérence liée à une mauvaise∗ En IA, <strong>le</strong> terme ontologie a actuel<strong>le</strong>ment de façon généra<strong>le</strong> l’une ou l’autre des significations suivantes, qui sont liées : 1) Le vocabulaired’une représentation, typiquement spécifique à un domaine ou à un problème. Plus précisément, l’ontologie n’est pas <strong>le</strong> vocabulaire luimêmemais la conceptualisation sous-jacente.[..] Identifier ces concepts demande généra<strong>le</strong>ment une analyse minutieuse des types d’objets etde relations qui peuvent exister dans <strong>le</strong> domaine. 2) Un corpus de connaissances décrivant un domaine, typiquement un domaine de senscommun, en utilisant un tel vocabulaire. (tda)74


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABanalyse ontologique. Cet exemp<strong>le</strong> provient d’une base de connaissances portant sur un domaine où il y a despersonnes, dont certaines sont étudiants, d’autres enseignants ou autres employés. Une ontologie simp<strong>le</strong> ad’abord été utilisée où <strong>le</strong>s classes étudiants, employés, enseignants, homme ou femme, étaient représentéescomme des sortes-de humains. Des problèmes ont surgi liés au fait que des étudiants pouvaient aussi être parfoisdes employés, ou encore cesser d’être étudiant. Une deuxième analyse ontologique a alors montré que <strong>le</strong>s classesétudiants, employés, et enseignants étaient plutôt des rô<strong>le</strong>s tenus par <strong>le</strong>s humains, et non des sous-classesd’humains comme <strong>le</strong>s classes hommes et femmes.Même si <strong>le</strong>s ontologies sont classiquement axées sur la modélisation du QUOI, el<strong>le</strong>s sont rarementindépendantes du COMMENT. [Guarino 97] caractérise <strong>le</strong>s ontologies selon <strong>le</strong>ur niveau de dépendance d’unetâche ou d’un point de vue particulier :- <strong>le</strong>s ontologies <strong>le</strong>s plus généra<strong>le</strong>s contenant des concepts comme <strong>le</strong> temps, l’espace, l’action, l’événement,- <strong>le</strong>s ontologies de domaine posant <strong>le</strong> vocabulaire employé dans un domaine,- <strong>le</strong>s ontologies de tâche décrivant une activité générique,- <strong>le</strong>s ontologies d’application qui spécialisent <strong>le</strong>s deux précédentes en indiquant <strong>le</strong> rô<strong>le</strong> joué par <strong>le</strong>s entités duvocabulaire dans l’activité.[Chandrasekaran et al. 98] analysent <strong>le</strong>s ontologies de haut niveau présentes dans la littérature, comme CYC de[Lenat and Guha 90], pour faire une synthèse de ce qui est communément admis : Il y a des objets dans <strong>le</strong>monde, ils ont des propriétés qui peuvent prendre des va<strong>le</strong>urs. Les objets peuvent exister en ayant diversesrelations <strong>le</strong>s uns avec <strong>le</strong>s autres. Les propriétés et relations peuvent changer avec <strong>le</strong> temps. Il y a des événementsqui se produisent à différentes dates temporel<strong>le</strong>s, il y a des processus auxquels participent des objets et qui seproduisent dans <strong>le</strong> temps. Le monde et ses objets peuvent être dans différents états. Des événements peuventcauser d’autres événements comme effets. Les objets peuvent avoir des parties. Et ainsi de suite.Parmi <strong>le</strong>s ontologies célèbres, CYC est un effort de construction d’une ontologie universel<strong>le</strong> de sens commun quise poursuit depuis une quinzaine d’années. Des efforts portent actuel<strong>le</strong>ment sur l’aide à la constructiond’ontologies. Ontolingua est un éditeur d’ontologies proposé par l’université de Stanford. Le terme« ontolingua » renvoie en fait au langage utilisé pour construire <strong>le</strong>s ontologies. Ce projet met éga<strong>le</strong>ment en placeun serveur d’ontologies.Les ontologies sont utilisées dans plusieurs contextes, comme la transmission d’un concept, latraduction d' un concept d’un modè<strong>le</strong> dans un autre. Cela permet souvent de fédérer des points devue et des représentations. Dans une optique d’aide à l’accès, <strong>le</strong>s ontologies sont uti<strong>le</strong>s pourfédérer des sources d’informations portant sur un même domaine et pour construire des modu<strong>le</strong>sd’interprétation de requêtes.Les outils de manipulation d’une ontologie sont la classification d’un concept ou d’une instance ainsi que ladétermination d’identité entre deux concepts. Notons que <strong>le</strong>s nomenclatures sont des ontologies trop simp<strong>le</strong>spour de tels outils. Le monde réel représenté y est décrit par une structure hiérarchique de classes d’objets, où <strong>le</strong>sliens entre ces classes sont des liens de subsumption, « est une sorte de ». Ce type de représentation, trop simp<strong>le</strong>,ne peut pas se partager faci<strong>le</strong>ment. Il ne s’y trouve pas des liens importants entre <strong>le</strong>s classes qui permettraient parexemp<strong>le</strong> d’exprimer des correspondances d’une nomenclature à l’autre. Cela se comprend faci<strong>le</strong>ment sur unexemp<strong>le</strong> décrit Figure 26. La nomenclature de l’utilisateur, un propriétaire de camions qui rou<strong>le</strong>nt à des vitessesdifférentes sur <strong>le</strong>s routes selon <strong>le</strong>ur type rA’ ou rB’, ne peut intégrer la nomenclature d’une carte routière quidistingue trois types rA, rB et rC de routes. Si l’utilisateur calcu<strong>le</strong> des itinéraires avec cette carte il ne sait pas àquel<strong>le</strong> vitesse ses camions peuvent rou<strong>le</strong>r sur <strong>le</strong>s routes rB, puisqu’il ne sait pas si el<strong>le</strong>s sont dans rA’ ou dansrB’, et donc il ne peut pas optimiser ses itinéraires.75


A’ (G ≤ H ≤ IJ=KrB’ (CD < E FrA (G ≤ H ≤ LM'NrB (L < O ≤ PRQTS=UrC (PRQTS < V W¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABsorte desorte deroutessorte desorte deFigure 26 : Un exemp<strong>le</strong> d'incompatibilité de nomenclatures. [Figure 26 : Examp<strong>le</strong> of incompatibility betweennomenclatures.]Une démarche importante est OIL, Ontology Inference Layer, mis en place dans <strong>le</strong> cadre européen IST [Fensel etal. 00]. Alors qu’Ontolingua permet de représenter des ontologies et de <strong>le</strong>s échanger sur <strong>le</strong> Web, OIL permet enplus de <strong>le</strong>s manipu<strong>le</strong>r sur <strong>le</strong> Web. OIL reprend diverses techniques de représentation qui chacune apporte unecaractéristique intéressante à OIL :- <strong>le</strong>s logiques de description permettent de représenter des connaissances de façon optima<strong>le</strong> pour conduire desinférences sur ces connaissances,- <strong>le</strong>s langages de frame (proches de l’orienté-objet) possèdent une expressivité plus importante que <strong>le</strong>slogiques de description.OIL a été intégré dans <strong>le</strong> langage DAML pour former DAML+OIL [Connolly et al. 01]. Cela deviendraprobab<strong>le</strong>ment une recommandation W3C pour l' écriture d' ontologies sur <strong>le</strong> Web.2.1.3.3 Les modè<strong>le</strong>s axés sur <strong>le</strong> COMMENTLa description d'outilsLa modélisation du COMMENT peut être focalisée sur <strong>le</strong> développement d’outils et de méthodes, comme <strong>le</strong>ssystèmes de règ<strong>le</strong>s ou la logique floue [Chandrasekaran et al. 98]. Les systèmes multi-agents sont un modè<strong>le</strong> deCOMMENT très en vogue.Dans <strong>le</strong> contexte du partage de connaissances sur <strong>le</strong> Web, en parallè<strong>le</strong> aux infrastructures d’informations, destentatives d’infrastructures de traitements sont expérimentées. Ces efforts s' appuient sur des langages dedescription des ressources Web fournissant ces services. Le langage Web Service Description Language, WSDL,basé sur XML, permet ainsi de décrire un service en précisant son nom, <strong>le</strong>s méthodes qui peuvent être invoquées,<strong>le</strong>s paramètres et <strong>le</strong>s types d’entrée et de sortie de ses méthodes [Christensen et al. 01]. Lorsqu’un utilisateur veututiliser un tel service, il exprime une première requête pour obtenir auprès du site serveur la description WSDLde ce service. Puis, à l’aide de cette description, il construit une requête faisant appel à l’application de ceservice. Cette requête est adressée au site serveur et exécutée sur ce site serveur. Le résultat est ensuite envoyé àl’utilisateur. Cette description se limite à répondre à la question avec quoi? car il ne rattache pas la descriptiondu service à des méthodes de résolution de problème décrivant dans quel contexte utiliser ce service.Une aide plus sophistiqué consiste à donner accès à la composition et l' interopération de services. Des normes dedialogue, comme RosettaNet, sont associées aux normes d' infrastructure pour permettre aux services d' échangerdes informations [Crusson et Girard 01]. Le langage DAML+OIL supporte maintenant DAML-S Web ServiceMarkup Language qui permet d' automatiser plusieurs manipulations des services Web :- la recherche d' un service sur <strong>le</strong> Web,- l' invocation d' un service sur <strong>le</strong> Web,76


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"AB- la composition et l'interopération de services sur <strong>le</strong> Web.DAML-S ne s'appuie pas uniquement sur un langage de description de services mais aussi sur la constructiond'une ontologie de processus élémentaires. Cette ontologie doit être suffisamment exhaustive pour que toutservice décrit se compose de ces processus. La description d'un service par DAML-S est alors structurée en troiséléments :- Le profil du service, c'est-à-dire ce qu'il fait. Il s'agit de caractéristiques comme <strong>le</strong>s types d'entrée et desortie, <strong>le</strong>s préconditions et postconditions.- Le modè<strong>le</strong> du service, c'est-à-dire comment il fonctionne. Il s'agit de la décomposition du service selon <strong>le</strong>sprocessus de l'ontologie.- Le support du service, c'est-à-dire comment y accéder. Il s'agit essentiel<strong>le</strong>ment de la définition desprotoco<strong>le</strong>s de communication qui peuvent être employés pour invoquer ce service.Un exemp<strong>le</strong> d'ontologie de traitements est la base de connaissances construite par [Borgo et al. 97] dans <strong>le</strong>urprototype de moteur de recherche en ligne de composants orienté-objet Ontoseek. Cette ontologie porte sur descomposants orienté-objet disponib<strong>le</strong>s en ligne et décrit ces composants par <strong>le</strong>s tâches qu’ils permettentd’accomplir comme « ouvrir une fenêtre pop-up avec un message dedans ». Ce moteur de recherche permet àl’utilisateur d’exprimer son besoin de ressource en décrivant ce que fait ce composant et non pas ce qu’il est, soitencore, pour reprendre <strong>le</strong>s éléments de description de DAML-S, en décrivant <strong>le</strong> profil de ce composant. Plusencore, Ontoseek utilise un vocabulaire proche de celui de l'utilisateur pour décrire ce profil.Dans un contexte d’aide à l’accès, <strong>le</strong>s démarches ne se cantonnent plus à décrire des outils maisintègrent d’autres connaissances. Cela peut être des connaissances de mode d'emploi comme veut<strong>le</strong> faire DAML-S. Cela peut aussi être des connaissances permettant à l'utilisateur de s'exprimerdans son vocabulaire et non dans celui des ressources, comme dans Ontoseek.La description d'utilisations : <strong>le</strong>s modè<strong>le</strong>s à base de tâches et de rô<strong>le</strong>sLa modélisation du COMMENT peut aussi s’attacher à couvrir entièrement un raisonnement, de l’énoncé del’objectif à l’exploitation d’outils pour atteindre cet objectif. Les connaissances modélisées sont globa<strong>le</strong>ment <strong>le</strong>sconnaissances permettant de répondre aux trois questions suivantes :Pourquoi ? : quel est l’objectif poursuivi dans la manipulation ?Comment ? : quel<strong>le</strong>s sont <strong>le</strong>s stratégies et <strong>le</strong>s méthodes pour manipu<strong>le</strong>r <strong>le</strong>s objets?Avec quoi ? : quels sont <strong>le</strong>s outils utilisés?C’est bien vers de tels modè<strong>le</strong>s que tendent <strong>le</strong>s démarches d’aide à l’accès à des outils présentées dans la sectionprécédente. Dans ce même contexte de diffusion d’outils sur <strong>le</strong> Web, certaines démarches visent d’ail<strong>le</strong>urs àformaliser des connaissances de mode d’emploi plus avancées que la simp<strong>le</strong> interopération. El<strong>le</strong>s décrivent desprocessus métier qui enchaînent des services. Dans ce domaine il n'existe pas encore de norme, mais despropositions sont faites, comme par exemp<strong>le</strong> BPML (Business Processus Management Language) basé sur XML[Crusson et Girard 01].L'utilisation de tels langages permet de fournir à des utilisateurs de ressources des applications toute faites,décrites comme une séquence des services à exécuter. Toutefois, el<strong>le</strong> ne permet pas d'exprimer un besoin et de <strong>le</strong>confronter à des ressources pour sé<strong>le</strong>ctionner effectivement <strong>le</strong>s ressources nécessaires et concevoir l'utilisationparticulière de ces ressources qui répondra au besoin de l'utilisateur.Dans <strong>le</strong> contexte de l'aide à l'accès, il est intéressant d'associer à la description de ressources unedescription d'un COMMENT couvrant tout un raisonnement, c'est-à-dire <strong>le</strong>s pourquoi, comment, etavec quoi. Un tel modè<strong>le</strong> fait effectivement <strong>le</strong> lien entre un besoin d'utilisateur et <strong>le</strong>s ressourcesuti<strong>le</strong>s pour y répondre, comme représenté Figure 27. L'expression du besoin se fait en termes de77


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABréponse à la question « pourquoi ?». Le modè<strong>le</strong> fait <strong>le</strong> lien entre ce « pourquoi ?» et desconnaissances de type « avec quoi ? ». Ces dernières connaissances désignent justement lasé<strong>le</strong>ction de ressources uti<strong>le</strong>s. L'utilisateur n'a donc pas besoin de connaître <strong>le</strong>s ressources, ni <strong>le</strong>soutils de traitements de ces ressources, ni <strong>le</strong>s modes d’emploi associés. Il lui suffit de s'exprimeren termes d'objectif poursuivi.Partie spécifiée par l’utilisateurCOMMENT Pourquoi ?Traductiond’un besoin de connaissances,formulé par l’utilisateur,enune sé<strong>le</strong>ction d’information uti<strong>le</strong>et de ressources uti<strong>le</strong>sComment?Avec quoi?RessourcesQUOImanipu<strong>le</strong>ntobjetsPartie spécifié par <strong>le</strong> systèmeFigure 27 : Contribution d’un modè<strong>le</strong> intégrant des connaissances de type QUOI et COMMENT à l’accèsd’utilisateurs à l’exploitation de ressources. [Figure 27 : Contribution of a model integrating WHAT and HOWknow<strong>le</strong>dge to users’access.]Une notion essentiel<strong>le</strong> dans une modélisation globa<strong>le</strong> du COMMENT est cel<strong>le</strong> de rô<strong>le</strong> tel<strong>le</strong> qu’el<strong>le</strong> est utiliséedans [Marcus 88]. Il s’agit d’attribuer aux éléments modélisés dans un domaine d’intérêt un rô<strong>le</strong> dans larésolution de problèmes portant sur ce domaine, par exemp<strong>le</strong> un critère de classification, une hypothèse. Desméthodes de modélisation sont mises en place pour construire des modè<strong>le</strong>s en s’appuyant sur cette notion derô<strong>le</strong>, comme SALT de [Marcus and McDermott 89] qui s’appuie sur <strong>le</strong>s rô<strong>le</strong>s de la méthode générique proposeand-revise.Une notion complémentaire est cel<strong>le</strong> de tâche. Une tâche consiste à déterminer des connaissances « de sortie » àpartir de connaissances « d’entrée ». Plusieurs types de tâches génériques ont été identifiés à partir de travaux enpsychologie cognitive, comme calcu<strong>le</strong>r, comparer, généraliser. De tel<strong>le</strong>s tâches peuvent être spécifiées pourdécrire des tâches spécifiques à un domaine, comme <strong>le</strong> diagnostic médical ou la configuration d’un ordinateur.De façon généra<strong>le</strong>, la résolution d’une tâche ne correspond pas à la résolution d’un problème particulier maisplutôt d’une famil<strong>le</strong> de problèmes, par exemp<strong>le</strong> la famil<strong>le</strong> des calculs de trajets en métro.L'utilisation d'une description de tâches et de rô<strong>le</strong>s présente de multip<strong>le</strong> avantages :- La description de rô<strong>le</strong> pour décrire indirectement <strong>le</strong> contenu manipulé permet d’éviter <strong>le</strong>problème d’interaction présenté précédemment (2.1.3.1).- La description de tâches intègrent des réponses aux pourquoi, comment et avec quoi. En cela,el<strong>le</strong> permet l’expression d’un besoin , et la traduction de ce besoin en une sé<strong>le</strong>ction deressources et d’un mode d’emploi de ces ressources.- Une même tâche décrit une famil<strong>le</strong> de problèmes particuliers. La représentation deconnaissances de spécification d’une tâche permet à un utilisateur d’utiliser une tâche décritepour concevoir une résolution de son problème particulier, c'est-à-dire une utilisationprécisément adaptée à son besoin.78


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABUn exemp<strong>le</strong> : KADSNous détaillons ci-dessous un exemp<strong>le</strong> de modè<strong>le</strong> qui intègre <strong>le</strong>s notions de tâches et de rô<strong>le</strong>s. Initié en 1983, <strong>le</strong>projet européen ESPRIT IT KADS, suivi de KADS II, met en place une méthodologie qui couvre <strong>le</strong> cyc<strong>le</strong> de vied’un système à base de connaissance [Schreiber et al. 99]. Cette méthodologie permet entre autres de construireun modè<strong>le</strong> d' expertise à base de tâches. Comme <strong>le</strong> souligne [Le Roux 94], KADS faitfigure de standardeuropéen dans la modélisation du raisonnement et d’autre part présente une f<strong>le</strong>xibilité exceptionnel<strong>le</strong>, c’est-àdirela possibilité d’utiliser ce même modè<strong>le</strong> pour modéliser divers savoir d’experts. Par contre, KADS n’offrepas de modè<strong>le</strong> d' implémentation de ce modè<strong>le</strong> conceptuel. [Le Roux 94] cite à ce propos une étude comparative :« Alors que KADS est la seu<strong>le</strong> approche procurant un langage général de modélisation, c’est aussi la seu<strong>le</strong> dont<strong>le</strong>s modè<strong>le</strong>s ne soient pas opérationnels. Ce sont là deux faces d’une même médail<strong>le</strong>. [..] Il est évident queKADS est beaucoup plus f<strong>le</strong>xib<strong>le</strong> que <strong>le</strong>s autres approches, cela étant dû à son total manque de sémantiqueopérationnel<strong>le</strong>. »Le modè<strong>le</strong> d’expertise KADS est catégorisé en trois parties qui communiquent :1- Les Tâches sont des problèmes généraux pour <strong>le</strong>squels on possède des méthodes de résolution. Une méthodede résolution d’une tâche peut indiquer une décomposition d’une tâche comp<strong>le</strong>xe en sous-tâches ou, si c’estune tâche primitive, invoquer un élément de la couche des inférences.2- Les Inférences sont <strong>le</strong>s opérateurs permettant de manipu<strong>le</strong>r <strong>le</strong>s objets du problème, ce sont <strong>le</strong>s briquesélémentaires du raisonnement.3- Le Domaine décrit la connaissance spécifique au domaine : c’est un peu l’équiva<strong>le</strong>nt du modè<strong>le</strong> objet d’unsystème, enrichi des instances, c' est-à-dire la structure de la base de connaissances factuel<strong>le</strong>s et la base deconnaissances même.Une tâche est décrite comme un but à atteindre. Il n’y a pas de façon générique universel<strong>le</strong> de dire comments’énonce un but. Certains buts s’énoncent uniquement à l’aide du vocabulaire proposé dans <strong>le</strong> domaine. D’autresbuts intègrent dans <strong>le</strong>ur énoncé ce que Chandrasekaran appel<strong>le</strong> des « termes d’attitude » : souhaité, à éviter,expliquer. A chaque tâche correspondent des méthodes pour la réaliser, c’est-à-dire des successions d’actions àmener pour atteindre l’objectif. Il peut y avoir plusieurs méthodes pour atteindre un même objectif.Quand une tâche comporte plusieurs méthodes de résolution, une stratégie lui est associée qui désigne commentchoisir une méthode en fonction du contexte de réalisation de la tâche.Les entrées et sorties des tâches et des inférences sont spécifiées fonctionnel<strong>le</strong>ment, sous la forme de rô<strong>le</strong>s. Lesrô<strong>le</strong>s sont des variab<strong>le</strong>s qui prennent <strong>le</strong>urs va<strong>le</strong>urs dans <strong>le</strong> domaine.Notons que <strong>le</strong> terme « domaine » peut prêter à confusion car l’expression « connaissances d’un domaine »désigne couramment l’ensemb<strong>le</strong> des connaissances des experts d’un domaine. Dans KADS, <strong>le</strong> domaine n' estqu' une partie des «connaissances d’un domaine ». Les tâches, inférences et rô<strong>le</strong>s font aussi partie de cesconnaissances.En définitive, <strong>le</strong> modè<strong>le</strong> d’expertise KADS propose une structure pour <strong>le</strong> COMMENT, et un mécanisme pourrattacher ce COMMENT à un QUOI mais il ne propose pas de structure spécifique pour <strong>le</strong> QUOI. Ceci estlogique car <strong>le</strong> but d’une structuration est de supporter un type de raisonnement, voire d’optimiser desmanipulations : <strong>le</strong>s connaissances QUOI doivent pouvoir être structurées diversement selon <strong>le</strong> raisonnement quel’on souhaite effectuer dessus. Cette structuration se fait par l' intermédiaire des rô<strong>le</strong>s. A une tâche correspond unensemb<strong>le</strong> de rô<strong>le</strong>s qui forment <strong>le</strong> vocabulaire de base de cette tâches. Lorsque la tâche est mise en œuvre, <strong>le</strong> faitde valuer <strong>le</strong>s divers rô<strong>le</strong>s avec <strong>le</strong>s éléments du domaine correspond à structurer dynamiquement <strong>le</strong> domaine envue du raisonnement mené dans la tâche. Cela est résumé sur la Figure 28.79


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABCOMMENTTâcheEst réalisée suivantStructuredes tâchesMéthodeUtilise comme sous-tâche dansla décomposition de la tâcheTâcheInférenceCorrespondance tâchesprimitives-inférencesStructuresdu domaineRô<strong>le</strong>d’entréeRô<strong>le</strong>de sortieCorrespondance entre rô<strong>le</strong>set éléments du domaineQUOIElément dudomaineElément dudomaineFigure 28 : Structuration des éléments du modè<strong>le</strong> d’expertise KADS. Le COMMENT est structuré par <strong>le</strong>sméthodes c’est-à-dire la spécialisation des tâches et éga<strong>le</strong>ment <strong>le</strong>ur décomposition en sous-tâches. Le QUOIpeut être structuré différemment grâce aux rô<strong>le</strong>s qui concrétisent <strong>le</strong>s points de vue des tâches sur <strong>le</strong> domaine.[Figure 28 : E<strong>le</strong>ments structure in a KADS expertise model. The HOW is structured by methods, i.e. thespecialisation and decomposition of tasks into sub-tasks. The WHAT may be structured in different waysdepending on ro<strong>le</strong>s making up for tasks dedicated views on the domain.]Un modè<strong>le</strong> d’expertise KADS est généra<strong>le</strong>ment utilisé pour résoudre des problèmes particuliers. La résolutionpasse dans un premier temps par l’identification d’une tâche du modè<strong>le</strong> proche du problème. Ensuite la méthodede cette tâche du modè<strong>le</strong> est appliquée pour instancier, <strong>le</strong>s concepts du domaine décrivant son objectif en tenantcompte des spécificités du problème particulier. Dans l’exemp<strong>le</strong> de l’affectation de bureaux, décrit Figure 29, ladétermination de la tâche doit fournir <strong>le</strong>s bonnes instances de liens entre employés et bureaux.80


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABTACHESTâche “Affecter des bureaux à des employés”But: <strong>le</strong>s allocationsStratégie : on va utiliser la structure d’inférence d’affectation de ressources(<strong>le</strong>s bureaux) à des composants (<strong>le</strong>s employés)Méthode : la tâche fait directement appel à la structure d’inférenceINFERENCESStructure d’inférencesComposantsClasse decomposantsGroupe decomposantsSé<strong>le</strong>ctionneGroupeAffecteAllocationPrioritéContrainteContrainteRessourcesEmployésRelationsde prioritéEnsemb<strong>le</strong>sd’employés Règ<strong>le</strong>sPréférences desemployésBureauxabsolues Ensemb<strong>le</strong>s d’employésDOMAINEA priorité surRèg<strong>le</strong>s absolues : <strong>le</strong> bureau de la secrétaireCdoit être en face de celui du chef, …EmployéaFonctionPréférences des employés: être près d’uneCfenêtre,…Est proche deoccupeBureauFigure 29 : Exemp<strong>le</strong> d’utilisation du modè<strong>le</strong> KADS : la tâche d’affectation de bureaux. [Figure 29 : An examp<strong>le</strong>of usage of the KADS model to describe office rooms assignment.]Les environnement de résolution coopérative de problèmesLes modè<strong>le</strong>s intégrant des connaissances de types QUOI et COMMENT formalisent des connaissancescomp<strong>le</strong>xes et sont généra<strong>le</strong>ment délicats à utiliser. Dans une optique d'aide à l'accès, ils ne peuvent êtredirectement exploités par <strong>le</strong>s utilisateurs concernés; la construction de modè<strong>le</strong>s décrivant <strong>le</strong>s connaissances detypes QUOI et COMMENT à propos de ressources (par exemp<strong>le</strong> <strong>le</strong>s modè<strong>le</strong>s à base de tâches) est doncindissociab<strong>le</strong> de la construction de systèmes particuliers qui servent d'interface entre <strong>le</strong>s utilisateurs et de telsmodè<strong>le</strong>s.De tels systèmes sont des environnement de résolution coopérative de problèmes. Un tel environnement permetde façon général de résoudre un problème en permettant à l'utilisateur de participer à la résolution du problème.Dans <strong>le</strong> cas de l'aide à l'accès, <strong>le</strong> problème à résoudre est "comment répondre au besoin particulier d'informationgéographique de l'utilisateur" et sa résolution doit s'appuyer sur la description d'une tâche connue proche duproblème de l'utilisateur.81


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABL'exploitation du modè<strong>le</strong> se fait généra<strong>le</strong>ment en alternant des phases de planification et de résolution. Laplanification consiste à déterminer quel<strong>le</strong>s actions effectuer pour résoudre <strong>le</strong> problème particulier de l'utilisateuret la résolution consiste à effectuer ces actions.Un système exploitant un modè<strong>le</strong> de connaissances QUOI et COMMENT sur des ressources peutsoit proposer une aide à la planification, c'est-à-dire aider un utilisateur à déterminer <strong>le</strong>s actionsqu'il doit effectuer, soit une aide globa<strong>le</strong> à la résolution qui comprend <strong>le</strong>s actions el<strong>le</strong>s-mêmes.Dans un contexte d'aide à l'accès, l'aide à la planification consiste à aider l'utilisateur à comprendrecomment <strong>le</strong>s ressources peuvent répondre à son besoin. L'aide à la résolution consiste à aiderl'utilisateur à répondre à son besoin avec <strong>le</strong>s ressources.L'architecture de tels systèmes est souvent une architecture emboîtée, comme décrit Figure 30. Cela signifie que<strong>le</strong> modè<strong>le</strong> QUOI-COMMENT que l'on veut exploiter grâce au système est intégré dans <strong>le</strong> QUOI du modè<strong>le</strong>QUOI-COMMENT du système.COMMENTdu systèmeQUOIdu systèmeCOMMENTQUOIConnaissances de manipulation du modè<strong>le</strong>spécifique (comment mener des raisonnementsparticuliers grâce à ce modè<strong>le</strong>) et de gestion del'interaction avec l'utilisateur (comment faireparticiper l'utilisateur à ces raisonnements)Modè<strong>le</strong> spécifique quel'on veut exploiter grâceau systèmeFigure 30 : Architecture d'un environnement de résolution coopérative de problèmes exploitant un modè<strong>le</strong> deconnaissances QUOI-et-COMMENT.[Figure 30 : Architecture of a cooperative prob<strong>le</strong>m-solving environmentusing a WHAT and HOW know<strong>le</strong>dge model]Le type de modè<strong>le</strong> utilisé dans <strong>le</strong> système LISA de [Delouis et Krivine 95] pour construire une tel<strong>le</strong> architectureest un modè<strong>le</strong> à base de buts, méthodes et domaine. Les buts et méthodes sont utilisés pour décrire desconnaissances de type COMMENT, spécifiques à un domaine d'intérêt donné ou spécifiques au système, et <strong>le</strong>domaine décrit <strong>le</strong>s objets manipulés. Ce modè<strong>le</strong> permet d'associer à un but plusieurs méthodes pour l'atteindre.Dans ce système, l'utilisateur participe de deux façons : il peut participer à la résolution de son problème endonnant des va<strong>le</strong>urs à certains buts intermédiaires désignés par la méthode choisie, et il peut éga<strong>le</strong>ment participerà la planification en choisissant une méthode.Le modè<strong>le</strong> SCARP proposé par [Willamowski 92] permet une coopération plus riche. L'utilisateur peutintervenir ponctuel<strong>le</strong>ment ou rediriger tota<strong>le</strong>ment <strong>le</strong> processus en cours.C'est un modè<strong>le</strong> à base de tâches. Les tâches du domaine sont organisées en hiérarchies : hiérarchie desentrées/sorties et hiérarchie des méthodes. Cela permet une planification hiérarchique. La coopération peut alorsse situer à divers niveaux d'abstraction. Le système possède des mécanismes sophistiqués de classification desentités manipulées dans <strong>le</strong> domaine qui lui permettent, en fonction de spécification des entrées et sorties parl'utilisateur d'al<strong>le</strong>r classer <strong>le</strong> problème de l'utilisateur dans <strong>le</strong>s tâches connues du système. Ces mécanismes sonten fait liés au langage SHIRKA utilisé pour représenter <strong>le</strong>s connaissances QUOI du domaine d'intérêt.De plus, l'auteur introduit des tâches de visualisation (dans <strong>le</strong> COMMENT du système), qui permettent ausystème de communiquer à l'utilisateur des connaissances relativement exhaustives sur <strong>le</strong> processus deplanification et résolution en cours. Le système possède éga<strong>le</strong>ment des connaissances de contextualisation qui luipermettent de vérifier que <strong>le</strong>s décisions de l'utilisateur sont applicab<strong>le</strong>s. Ces connaissances de contextualisationsont décrites au niveau de chaque tâche du domaine d'intérêt grâce à une sur-couche de SHIRKA proposée par[Willamowski 92].82


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABDTSM (Dynamic Se<strong>le</strong>ction of Tasks and Methods) est un environnement de construction de systèmes à base deconnaissances s'appuyant éga<strong>le</strong>ment sur <strong>le</strong>s notions de tâches et de méthodes. Il supporte la construction d'unmodè<strong>le</strong> dédié au problème de l'utilisateur et, au fur et à mesure de la modélisation, une opérationnalisation de cemodè<strong>le</strong> qui permet de l'affiner [Trichet et al. 00]. Les auteurs utilisent <strong>le</strong>s graphes conceptuels pour représenter<strong>le</strong>s tâches, <strong>le</strong>s méthodes et <strong>le</strong> domaine.Une tâche est représentée comme une règ<strong>le</strong> produisant à partir d'un graphe conceptuel (GC) un autre GC. Lepremier GC est appelé hypothèse de la règ<strong>le</strong>, il représente <strong>le</strong> contexte d'activation de la tâche c'est-à-dire <strong>le</strong>sconditions nécessaires pour pouvoir la réaliser. Les concepts de ce GC décrivent <strong>le</strong>s entités manipulées dans <strong>le</strong>cas traité. Le GC conclusion de la règ<strong>le</strong> représente <strong>le</strong>s objectifs de la tâche.Une méthode est éga<strong>le</strong>ment représentée comme une règ<strong>le</strong>. Le GC hypothèse représente <strong>le</strong> contexte de sé<strong>le</strong>ctionde la méthode. Les concepts de ce GC décrivent <strong>le</strong>s ressources manipulées dans la méthode. Le GC conclusionreprésente <strong>le</strong>s résultats produits par la méthode.De façon similaire à [Willamowski 92], [Clouard et al. 02] proposent une aide au développement d'applicationsde traitement d'image, qui s'appuie sur un modè<strong>le</strong> de tâches décrivant, de façon générique, de tel<strong>le</strong>s applicationsà plusieurs niveaux d'abstractions, décrits Figure 31 :- Le niveau intentionnel est <strong>le</strong> niveau du problème de l'utilisateur. Les tâches y sont décrites avec unvocabulaire intentionnel comme "iso<strong>le</strong>r <strong>le</strong>s objets du fond" ou "former <strong>le</strong>s objets par fusion des régions". Lesconnaissances de détermination des tâches sont, à ce niveau, des connaissances stratégiques quidécomposent <strong>le</strong> problème en sous-problèmes.- Le niveau fonctionnel est <strong>le</strong> niveau décrivant <strong>le</strong>s méthodes du traitement d'image. Les tâches représententdes fonctionnalités du traitement d'image, comme la "détection de contour" ou la "classification des pixels".- Le niveau opérationnel est <strong>le</strong> niveau des algorithmes. Il associe aux fonctionnalités décrites dans <strong>le</strong> niveaufonctionnel des algorithmes possib<strong>le</strong>s comme "la classification de pixels basée sur une maximisation de lavariance inter-classes".ObjectifIntentionnelFonctionnel…OperationnelFigure 31 : Organisation en divers niveaux d'abstraction des tâches du modè<strong>le</strong> de [Clouard et al. 92].Chaqueniveau est l'expression d'une solution complète sous forme de graphe.[Figure 31 : The different <strong>le</strong>vels in thetasks model of [Clouard et al. 92]. At each <strong>le</strong>vel, a comp<strong>le</strong>te solution is represented by a graph.]Le projet Atelier Logiciel, mené dans <strong>le</strong> même cadre que <strong>le</strong>s travaux de [Clouard et al. 02], est un exemp<strong>le</strong>d'environnement de résolution coopérative de problèmes permettant à des utilisateurs, non experts en traitementd’image, d’accéder à l’exploitation de ressources en traitements d’image [Ficet 99]. Les ressources sont desbouts de codes de traitement d’image qui peuvent être paramétrés et assemblés pour constituer un programmecomp<strong>le</strong>t de traitement d’image. Les utilisateurs des ressources, auxquels ce système est destiné, sont des expertsde divers domaines (médical, industriel) travaillant sur des images. Le système utilise un modè<strong>le</strong> spécifique àbase de tâches : <strong>le</strong> modè<strong>le</strong> Tâche-Méthodes-Outils. Les outils sont <strong>le</strong>s bouts de code de traitement d'image. Les…83


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABtâches sont des tâches génériques de traitement d'image, qui sont associées à des méthodes <strong>le</strong>s décomposant ensous-tâches et, ultimement, en outils. L’expression du besoin d’un utilisateur s’appuie sur la spécification d’unetâche parmi cel<strong>le</strong>s du modè<strong>le</strong>. Les tâches sont décrites avec un vocabulaire du domaine général de l’image, quiest supposé familier aux utilisateurs, comme « détecter <strong>le</strong>s petits objets brillants sur l’image ». La tâche« extraire <strong>le</strong>s objets d'une région» est par exemp<strong>le</strong> décrite Figure 32.Extraire <strong>le</strong>sobjets d’unerégionSé<strong>le</strong>ctionner<strong>le</strong>s régions/convexitéSéparer <strong>le</strong>srégionsExtraire <strong>le</strong>snouveauxobjetsRestructurer la cartedes régionsAlgorithme deconvexitéSé<strong>le</strong>ctionner<strong>le</strong>s régions/convexitéSé<strong>le</strong>ctionner<strong>le</strong>s régions/surfaceUnir <strong>le</strong>sanciennes etnouvel<strong>le</strong>srégionsCréerl’imagefina<strong>le</strong>Eroderdeux foisNuméroter <strong>le</strong>srégionsDilaterCréer lacarte desrégionsAlgorithme desurfaceAlgorithmede jointureAlgorithmeRg2imAlgorithmed’érosionAlgorithmed’étiquetageAlgorithmed’épaississementAlgorithmeRg2imExtraire <strong>le</strong>sobjets d’unerégionTÂCHE (but ou sous-but) décrite en termes génériques indépendantsdu domaine de l’image (médical, surveillance optique…)METHODE (savoir-faire) décrit l'utilisation des outils pour atteindre unobjectif. El<strong>le</strong> exprime l’expertise combinée d’experts en analyse d’image, entraitement d’image, et d’experts du domaine.Algorithme deconvexitéOUTIL(ressource) Algorithme codé et paramétrab<strong>le</strong>Figure 32 : Architecture Tâche-Méthode-Outil (schéma synthétisé d’après [Ficet 99]) [Figure 32 : Task-Method-Tool architecture (synthetic schema after [Ficet 99])]Nous retenons que l’utilisation d’un modè<strong>le</strong> à base de tâches dans un contexte d’aide à l’accèsnécessite de recourir à un environnement de résolution coopérative de problèmes exploitant cemodè<strong>le</strong> pour aider l'utilisateur à résoudre son problème d'accès.84


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABDe plus, cela nécessite de représenter plusieurs types de tâches. Le cheminement entre l’expressiond’un besoin et l’exploitation de ressources repose en effet sur <strong>le</strong>s réponses aux questionpourquoi?, comment?, et avec quoi?.Certaines tâches –dites tâches intentionnel<strong>le</strong>s- sont plus axées sur <strong>le</strong> pourquoi, c' est-à-direl' expression du besoin.D' autres tâches –dites tâches fonctionnel<strong>le</strong>s- sont plus axées sur <strong>le</strong> comment. El<strong>le</strong>s entrent dans ladécomposition de tâches intentionnel<strong>le</strong>s.D' autres tâches enfin sont dites tâches opérationnel<strong>le</strong>s quand el<strong>le</strong>s décrivent une étape élémentairede résolution de problème, c' est-à-dire <strong>le</strong> avec quoi.2.1.4 Bilan des techniques d’aide à l’accès et de <strong>le</strong>ur intérêt dans notrecontexteCe premier vo<strong>le</strong>t de l’état de l’art a étudié <strong>le</strong>s techniques d’aide à l’accès et <strong>le</strong>urs contributions aux divers aspectsde cette problématique généra<strong>le</strong>. Il est important de situer notre cadre de travail parmi ces techniques. Certainescontributions à l’aide à l’accès à l’information géographique, bien qu’efficaces dans <strong>le</strong>ur optique, ne nousintéresseront pas si el<strong>le</strong>s ressortent d’une piste technique différente de la nôtre.Les services d’aide à l’accès aux données s' appuient sur <strong>le</strong> regroupement de pointeurs sur des données, et surl' utilisation de langages structurés pour stocker <strong>le</strong>s données. Ils contribuent généra<strong>le</strong>ment efficacement à O2(sé<strong>le</strong>ctionner l' information uti<strong>le</strong>) et O3 (traduire une sé<strong>le</strong>ction d' information uti<strong>le</strong> en une sé<strong>le</strong>ction de lot àacquérir) grâce à des opérations sur <strong>le</strong>s indexes de données. Ils servent surtout à organiser des ressourcescontenant de nombreuses données et à automatiser des traitements automatiques sur ces données, qui ne sont pasdes traitements de dérivation d’information mais de gestion de données (sé<strong>le</strong>ction, édition, modification…).Par contre ces services ne contribuent pas au processus d’interprétation et de contextualisation de ces données.C' est pourquoi nous n' explorons pas davantage cette piste.Les services d’aide à l’accès aux informations servent essentiel<strong>le</strong>ment à fédérer des ressources portant sur unmême domaine d’information. Ces services reposent sur un langage permettant de décrire de façon homogènedifférentes ressources en termes de contenu, et éventuel<strong>le</strong>ment d' informations descriptives tel<strong>le</strong>s que <strong>le</strong> protoco<strong>le</strong>de constitution. De tels langages se présentent souvent comme des standards de métadonnées.Les ontologies de domaine sont utilisées dans des applications visant à diffuser des ressources sur <strong>le</strong> Web, enétant exploitées par des modu<strong>le</strong>s d' interprétation de requêtes. Cette aide est considérée dans notre état de l' artcomme une aide à l' accès à des informations.Dans <strong>le</strong> cas de l' information géographique, nous avons vu qu' il n' existe pas de description unifiée de cetteinformation.85


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABCatégorie d’aide : Aide à l’accès aux données Aide à l’accès auxinformationsDémarches appartenant àcette catégorie :Contribution à O1(transfert deconnaissances):Contribution à O2(sé<strong>le</strong>ctionner l' informationuti<strong>le</strong>) :Contribution à O3(traduire une sé<strong>le</strong>ctiond' information uti<strong>le</strong> en unesé<strong>le</strong>ction de lot à acquérir):Contribution à O4(fédérer des ressources):Contribution à O5(s' adresser à diversutilisateurs):- Listes- Langages structurésavec opérateurs desé<strong>le</strong>ction- SGBDDésigne l’existence desressources- Entrepôts et fouil<strong>le</strong> dedonnées- Infrastructuresd’informations,métadonnées,- Langages semistructurés,et orientéobjet- Modè<strong>le</strong>s et fonctions dedérivation d’information- Standards demétadonnéesDécrit <strong>le</strong> contenu desressourcesAide à l’accès auxconnaissances- Aide aux raisonnements(métaphores,visualisation,classifications,…)- Aide au raisonnementformel : modélisationd’ontologies et deconnaissances derésolution de problèmeDécrit l’utilisation desressourcesRequête de données Requête de métadonnées Requête d’utilité attendueTraduction d’une requête enportion exacte de ressourcecomportant <strong>le</strong>s donnéesvouluesFaib<strong>le</strong>Traduction d’une requête enressource globa<strong>le</strong> à acquérir,ou portion comportant entreautres <strong>le</strong>s donées vouluesImportante, surtout sur unmême domaineFaib<strong>le</strong> Moyenne ImportanteTraduction d’une requête enressource candidatePossib<strong>le</strong> sur des ressourcesportant sur des domainesvariésFigure 33 : bilan des démarches contribuant à l’accès d’utilisateurs à des ressources en information. [Figure33 : Sum up of approaches contributing to users’ access to information resources.]Les services d’aide à l’accès aux connaissances décrivent des ressources pour se rapprocher d’une représentationutilisée dans <strong>le</strong> raisonnement de l’utilisateur et l’expression de son besoin. Les divers raisonnements quel’utilisateur peut effectuer correspondent à autant de pistes techniques pour contribuer à son accès à desressources.L’aide au raisonnement formel est la plus riche dans notre contexte. Les services entrant dans cette catégoriecontribuent à O1 de façon optima<strong>le</strong> car ils donnent accès à une manipulation des ressources. Ils contribuentéga<strong>le</strong>ment à O4 (fédérer des ressources) grâce aux travaux sur <strong>le</strong> partage et la réutilisation de connaissances. Parcontre, ils ne sont valab<strong>le</strong>s que pour un certain type d’utilisateurs : ceux aptes à manipu<strong>le</strong>r <strong>le</strong>s structuressymboliques proposées par <strong>le</strong> service. Par contre, <strong>le</strong>s services fondés sur l’aide au raisonnement formelsupposent que <strong>le</strong>s utilisateurs sont aptes à manipu<strong>le</strong>r <strong>le</strong>s structures symboliques proposées pour sonraisonnement. Les environnement de résolution coopérative de problèmes sont indissociab<strong>le</strong>s de ces modè<strong>le</strong>s carils servent d' interface entre l' utilisateur et <strong>le</strong> modè<strong>le</strong>.Nous définissons notre domaine technique comme l’aide au raisonnement formel sur l’informationgéographique, étant données ses représentations actuel<strong>le</strong>s.Il est important de souligner que des démarches visant à aider d’autres raisonnements que <strong>le</strong> raisonnementformel sont entreprises avec succès dans <strong>le</strong> domaine de l’information géographique. Ainsi l’aide au raisonnementgéométrique, fournie par <strong>le</strong>s systèmes de visualisation cartographique de données, a une part importante dansl’accès d’utilisateurs. La visualisation d’une carte est un moyen d’accès aux connaissances géographiquestraditionnel et familier à tous <strong>le</strong>s utilisateurs. Bien plus : « Language is our primary means of communication,yet humanity is divided into between three and four speech communities, and in most cases it is impossib<strong>le</strong> formembers of two different speech communities to understand each other. [..] There are prob<strong>le</strong>ms ofcommunication even within speech communities [..] pictures present no such prob<strong>le</strong>ms, and a picture of a lone86


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABprotester in Tienanmen square is instantly meaningful to everyone.[..] Maps fall somewhere between these twoextremes. » (préface de [Vckovski 98] par Michael Goodchild) ∗ . Les techniques de visualisation ont évolué et i<strong>le</strong>st important d’exploiter <strong>le</strong>s nouvel<strong>le</strong>s possibilités offertes au dialogue entre un homme et un écran. Desrecherches visent actuel<strong>le</strong>ment à favoriser <strong>le</strong> procédé de reconstruction de connaissances par l’utilisateur lors desa <strong>le</strong>cture de la carte [MacEachren et al. 99b] [MacEachren and ICA 98]. [MacEachren et al. 99a] veu<strong>le</strong>ntintégrer la visualisation géographique avec <strong>le</strong>s méthodes de découverte de connaissances dans <strong>le</strong>s bases dedonnées. [Andrienko and Andrienko 99] combinent de même <strong>le</strong>s techniques de visualisation et d’analyse desdonnées.Par ail<strong>le</strong>urs, l’usage de langages visuels et de métaphores est un élément important dans la mise en placed’interfaces de dialogue d’utilisateurs avec des SIG. [Hubert 01a] propose un état de l' art de ces techniques.[Kuhn and Frank 91] étudient aussi l’application de métaphores spatia<strong>le</strong>s pour décrire <strong>le</strong>s outils SIG. Ilsdéfinissent des concepts de base invariants par la métaphore : <strong>le</strong> concept de base étant <strong>le</strong> « contenant », puis« centre/périphérie ».Ces démarches sont complémentaires de la nôtre. El<strong>le</strong>s portent sur <strong>le</strong> langage de communication entre unsystème possédant un modè<strong>le</strong> de connaissances et un utilisateur possédant son propre modè<strong>le</strong> de connaissances,Figure 34. Or nous nous intéressons au modè<strong>le</strong> de connaissances du système, <strong>le</strong>s concepts et la grammaire qu’ilutilise. Le dialogue effectif entre l’utilisateur et un système d’accès à l’information géographique, fait l’objetd’une thèse au COGIT, menée par Frédéric Hubert depuis novembre 1999 [Hubert 01a][Hubert 01b]. Cetterecherche est complémentaire de la nôtre. El<strong>le</strong> s’attache à l’interface proprement dite entre <strong>le</strong> système deformalisation des connaissances que nous construisons et un utilisateur, et sur <strong>le</strong>s interactions constituant <strong>le</strong>dialogue entre <strong>le</strong> système et l’utilisateur.Connaissances internesd’un utilisateurayant besoind’information géographiqueCommunication entre l’utilisateur et <strong>le</strong> systèmeConnaissances internesd’un systèmeportant sur l’exploitationde données géographiquesDémarches focalisées sur <strong>le</strong> DIALOGUE(Interfaces de visualisation, Langages graphiques, …)Démarches focalisées sur l’ORGANISATION DECONNAISSANCES DANS UN SYSTEME destiné àcommnuniquer avec un utilisateur(la mise en place du dialogue est une étape ultérieure)Figure 34 : Deux focalisations possib<strong>le</strong>s pour l’aide à l’accès à des connaissances : <strong>le</strong> dialogue entre un systèmed' aide et l' utilisateur, et l' organisation de connaissances dans un système d' aide. [Figure 34 : Possib<strong>le</strong> focuses inenhancing access to know<strong>le</strong>dge : the communication between an assisting system and a user, and theorganisation of know<strong>le</strong>dge into a system.]Concernant l' aide à l' accès, une formalisation efficace repose sur la distinction et l’intégration de deux catégoriesde connaissances, <strong>le</strong> QUOI et <strong>le</strong> COMMENT (pourquoi, comment, avec quoi). Une tel<strong>le</strong> formalisation s’appuiepar exemp<strong>le</strong> sur la modélisation de tâches et de rô<strong>le</strong>s.Dans la section suivante, nous revenons à notre problématique initia<strong>le</strong> c’est-à-dire l’accès àl’information géographique mais nous ne faisons pas un état de l’art des démarches d’aide à∗ Le langage est notre premier mode de communication. L’humanité est pourtant divisée entre environ quatre communautés de langage et i<strong>le</strong>st impossib<strong>le</strong> à des membres de deux communautés différentes de se comprendre entre eux. [..] Il y a même des problèmes de87


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '(*)+-, #./#102 43 .657#102 8# ¥":92&2$ ;=0 .6$ 02 @?43 .¥"A"ABl’accès à l’information géographique. Cette section 2.2 est en fait un premier pas dans notreapproche : nous avons choisi une approche technique et nous évaluons son applicabilité.L’approche technique choisie est la construction d’un modè<strong>le</strong> respectant <strong>le</strong> principe énoncé dans <strong>le</strong>paragraphe précédent et l’exploitation de ce modè<strong>le</strong> par un environnement de résolutioncoopérative de problèmes.Dans la section suivante, nous analysons l' existence d' une formalisation distincte et intégrée desconnaissances de type QUOI et COMMENT (pourquoi, comment, avec quoi) portant sur desdonnées géographiques.communication au sein de ces communautés. [..] Les images ne posent pas de tels problèmes et une photo d’un manifestant isolé sur la placede Tienanmen est immédiatement comprise par chacun. [..] Les cartes se situent quelquepart entre ces deux extrêmes.(tda)88


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨2.2.3.1 Les interactions de l’homme et du monde! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨2.2.3.2 Les représentations de l’espace géographique partagées partous! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


£¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£2.2.4.2 La structuration de l'application! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


£¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


£¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


F £¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¡£¢¥¤§¦ ¨¥©£ £¢¥£¥ ¨¢¨ ¢¥©¨! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


£¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


£¢¥£¥ ¨¢¨ ¢¥©¨¡£¢¥¤§¦ ¨¥©£! ¥"#$ %'& '( )+* #,-#/.0 21 ,435#/.0 768%'39:,41 $ !,-#$ %'&-;.0 21 $ &


¥¥¡£¢¥¤§¦ ¨¥©£3 NOTRE APPROCHELa partie précédente a permis d'une part de définir une technique efficace d'aide à l'accès, la construction d'unmodè<strong>le</strong> du QUOI et COMMENT des ressources, et d'autre part d'évaluer l'applicabilité de ce principe en passanten revue <strong>le</strong>s catégories d'un tel modè<strong>le</strong> qui ont déjà fait l'objet d'une formalisation.Dans cette partie, nous présentons notre approche.La section 3.1 explique <strong>le</strong>s principes généraux de cette approche. Nous nous concentrons sur la construction d’unmodè<strong>le</strong> intégrant <strong>le</strong> QUOI et <strong>le</strong> COMMENT des données géographiques. Pour que ce modè<strong>le</strong> contribueeffectivement à l'accès d'utilisateurs, nous lui associons un système de résolution coopérative de problème quisache exploiter ce modè<strong>le</strong> pour faciliter l’accès d’utilisateurs aux ressources en information géographique. Cesystème doit éga<strong>le</strong>ment supporter un autre processus : l’intégration de nouvel<strong>le</strong>s connaissances dans <strong>le</strong> modè<strong>le</strong>comme un nouveau jeu de métadonnées, un nouveau traitement, une nouvel<strong>le</strong> méthode.Nous définissons dans cette section ce modè<strong>le</strong> grâce à une grammaire Backus Naur Form.Nous construisons dans la section 3.2 <strong>le</strong>s premiers éléments d’une base de connaissances associée à notremodè<strong>le</strong>. Cela permet d’évaluer la capacité de ce modè<strong>le</strong> à expliciter <strong>le</strong>s connaissances de raisonnementsgéographiques. Cela permet éga<strong>le</strong>ment de démontrer en quoi il aide à distinguer <strong>le</strong>s connaissances de type QUOIdes connaissances de type COMMENT.La section 3.3 présente une démarche de prototypage évaluant <strong>le</strong>s fonctionnalités d’aide à l’accès associées à cemodè<strong>le</strong>.111


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "!$#"%'&)(+*-,./ !0 "!102! ¥3'45 6!£37 809£ "!3.1 Définition de notre contributionCette section met en place notre approche en tirant partie des conclusions des deux vo<strong>le</strong>ts de notre état de l'art.3.1.1 Principes générauxPropositionL'aide à l'accès que nous voulons mettre en place consiste en une architecture de métadonnées qui associe à ladescription du contenu des jeux de données la description du mode d'emploi de ces jeux. Cette architecture doitfaire <strong>le</strong>s liens entre des besoins d'utilisateurs, et des contenus associés à <strong>le</strong>urs modes d'emploi appropriés pourrépondre aux besoins.Il y a deux cas d'utilisation d'une tel<strong>le</strong> architecture, qui correspondent à deux situations d'accès différentes. Dans<strong>le</strong> cas 1, l’utilisateur possède une ressource spécifique et souhaite connaître <strong>le</strong>s connaissances qu’il peut endériver, c'est-à-dire ses modes d'emploi possib<strong>le</strong>s. L’accès se limite donc au transfert de connaissances, lasé<strong>le</strong>ction d’information uti<strong>le</strong> étant laissée de côté. Dans <strong>le</strong> cas 2, l’utilisateur a un besoin de connaissancesgéographiques et souhaite connaître quel<strong>le</strong> exploitation de quel<strong>le</strong>s ressources peut lui apporter ces connaissances,c'est-à-dire quel<strong>le</strong>s ressources acquérir et quel mode d'emploi utiliser pour ces ressources. Il s'agit là d'unvéritab<strong>le</strong> accès : traduire un besoin en une sé<strong>le</strong>ction de ressources répondant à ce besoin. Notre travail seconcentrera sur ce deuxième cas qui est <strong>le</strong> plus urgent à résoudre.La technique d'aide à l'accès utilisée est l'aide au raisonnement formel analysée dans l'état de l'art 2.1.2.3. Aussi,quel que soit <strong>le</strong> cas d'utilisation envisagé, cas 1 ou cas 2, l’aide à l’accès se décompose en deux parties décritesci-dessous :- Le modè<strong>le</strong> sur <strong>le</strong>quel <strong>le</strong> raisonnement formel constituant l'accès peut être réalisé –dans l’absolu-.L'architecture de métadonnées que nous proposons repose sur un modè<strong>le</strong> de description des BDG dont lanouveauté par rapport aux formalismes vus dans l’état de l’art est d’opérer la distinction entre <strong>le</strong>sconnaissances de type QUOI et cel<strong>le</strong>s de type COMMENT, et d’expliciter <strong>le</strong>s liens entre ces deux types deconnaissances. Ceci repose sur la modélisation de notions spécifiques : <strong>le</strong>s tâches et <strong>le</strong>s rô<strong>le</strong>s.- Un environnement de résolution coopérative de problèmes répartissant ce raisonnement entre lui-même etl'utilisateur.112


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Première composante de l'aide à l'accès : un modè<strong>le</strong>Nous détaillons ci-dessous en quoi un modè<strong>le</strong> décrivant des connaissances de type QUOI et COMMENT sur <strong>le</strong>sressources supporte <strong>le</strong> raisonnement formel constituant l’accès (dans <strong>le</strong> cas 1 ou cas 2).Dans <strong>le</strong> cas 1, <strong>le</strong> raisonnement d' accès est la détermination des connaissances que l' on peut dériver de ressourcesdonnées. Il s' appuie sur <strong>le</strong>s éléments suivants du modè<strong>le</strong> : <strong>le</strong>s descriptions de ressources, <strong>le</strong>s liens entre <strong>le</strong>sressources et <strong>le</strong>s opérations disponib<strong>le</strong>s sur el<strong>le</strong>s, <strong>le</strong>s liens entre <strong>le</strong>s opérations et <strong>le</strong>s méthodes qui <strong>le</strong>s utilisent,<strong>le</strong>s liens entre <strong>le</strong>s méthodes et <strong>le</strong>s objectifs qu’el<strong>le</strong>s permettent d’atteindre.Dans <strong>le</strong> cas 2, <strong>le</strong> raisonnement d' accès est la traduction d’un besoin de connaissances, formulé par l’utilisateur,en une sé<strong>le</strong>ction d’information et de ressources. Il s' appuie sur <strong>le</strong>s éléments suivants du modè<strong>le</strong> : un conceptd’utilisateur est lié à des objectifs énoncés à l’aide de ce concept, ces objectifs sont associés à des méthodespermettant de <strong>le</strong>s atteindre, <strong>le</strong>s méthodes sont reliées aux outils SIG et aux données qu’el<strong>le</strong>s mettent en œuvre.Cette aide est illustrée sur la Figure 45. Le modè<strong>le</strong> comprenant ces structures est détaillé section 3.1.2.COMMENT (pourquoi, comment, avec quoi)Objectifs d'utilisation(ex : "Comment al<strong>le</strong>r aubureau en voiture?")Méthodes(ex : méthode de calcul d'itinéraire)Opérations(ex : algorithmes de calcul de graphe)Spécifié àl’aide decas 2 :6 BesoinUtilisation de donnéescas 1:6 DonnéesUtilisations possib<strong>le</strong>sManipulationdeQUOIvoituremaisonitinérairecoordonnéesobjet routeconducteurboutiqueadressegéométrieFigure 45 : Contribution d’un modè<strong>le</strong> intégrant des connaissances géographiques de type QUOI et COMMENTà l’accès d’utilisateurs à l’exploitation de données géographiques. [Figure 45 : Contribution of a modelintegrating WHAT and HOW geographic know<strong>le</strong>dge to users’ access to the exploitation of geographic data.]La mise en place de cette première composante de l’aide consiste à définir ce modè<strong>le</strong>, c' est-à-diredes éléments permettant de décrire des jeux de données géographiques en intégrant desconnaissances de type COMMENT (pourquoi, comment, avec quoi) et QUOI. Les élémentsgénériques de ce modè<strong>le</strong> sont décrits section 3.1.2. La section 3.2 spécifie ensuite cette descriptiongénérique pour décrire effectivement des raisonnements géographiques.Deuxième composante de l'aide à l'accès : un environnement de résolutioncoopérative de problèmesUne deuxième partie de l’aide consiste à répartir ce raisonnement entre l’utilisateur et un environnement derésolution coopérative de problèmes. Nous détaillons ci-dessous comment cette répartition est faite.Dans <strong>le</strong> cas 1, l’utilisateur contribue au raisonnement global en décrivant <strong>le</strong>s données qu’il possède. Le systèmeexpert détermine <strong>le</strong>s informations et connaissances dérivab<strong>le</strong>s de ces données par l’application de traitements. Lesystème doit apporter à l’utilisateur des connaissances sur <strong>le</strong> sens et <strong>le</strong> mode d’emploi des données qu’il possède.113


819:;=:A@>B@1C;§;ED>1F*G§DC§G1H?8IJK9 L§:>FM67WX2Y Z1U\[]T^PU§R W T1_NOPQRSTPUV?Rc bdedgf1hgijc bd`^abcqgn§p r§stqeqsp ugl1vgn3t1qewtkglm?lknEoKmp‰ ‰ }£Šxgyze{1y|§|3}~z€xE~‚3~ƒ„3…†"‡1ˆŽ£§‘’“"ŽB”‹Œ§ŽÄÍ Î3ÉKÏ"ÈgÄÆeÐ1ÄѧÑ3ÒÉÆÃKÄÅ\ÆeÇ\ÄÅÈgÉKÊ*ÉË£ÇÌ×\ا٠Ô×Ú?ØAÛgܧÝÞßgØjàKáÓ1Ô^ÕÖÜ1Ùä§Ô1ØgÞ1Ù ß*Ó1Ô€ØgܧågÞÙ Ú°ægÞ1ç°ç"Ô£ßEèâãÖ ÔKÚ"Ü×€ä1×Ú?Ôܧ×ÜÖôó õ ë£ö\ïêeëìgíé*êeë1ìgí*îgï§í\ð?ëBñ1ï1ò*óìò"ïñë1ìeñëîgïí\ð]ëø÷1ùð]ëúùö§ûùgëõí3ëKÿ¡ %îgïù\ìí\ð?ú1ügì\ý\ï1ð?í°ìgïùþú1óëKò°ýðEùüEíEëK𣢦\§\¨©§¥ ª£« ¬¦e¦­®°ḡ¬1¦¤¥¼ µ±1²³§³E´µ1g·€¸º¹§»µ¼¼ ¿ À ½§Á ¿ ²³Eeg²³ Á ¿ ¼ ½¾¾g²À¿ ´· ½ð£¥ý\ïüEìgë짦 ¨©© ©¡ §§© ¤© #"$%'&()©*%+# ©*%,-!GL¡W¡RG-H§UF§G-HII£JK$GLM=IONQPBRG¡S$I£NQTHNUS¡VI'S)N[ [ NU#MGL¡L)J-N-UN-S\[ N-UMNRN*XYZ§TH§J*IV/¡. 0)1*2£3. 2£45768 8 499§: ;$3-2.48 8 4-9BAC30¡. > @ 8 3¡/¡. ;09D ?@ 48 8 49?@¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!De plus, <strong>le</strong> système doit prendre en compte la possibilité de combiner <strong>le</strong>s données que possède l’utilisateur àd’autres données. Ce cas est illustré Figure 46.SYSTEME•—–?˜\š›EœgœžŸ^¢§£ ¢œ*œgš› ¡¡ œ*šFigure 46 : Type d'aide à l’accès dans <strong>le</strong> cas 1. [Figure 46 : Scenario of users’ access in Case 1.]Dans <strong>le</strong> cas 2, l’utilisateur exprime son besoin de connaissances. Le système détermine quel<strong>le</strong>s données et quel<strong>le</strong>manipulation de ces données peuvent apporter une réponse à ce besoin. Ce cas est illustré Figure 47.SYSTEMEN]=K[ GV S)N*I'MN^[ Y\_Y¡`§GLU$HV RYLSN^a b;->$1*2£3¡/$. ;099 @ 2 ?¡@ 48 8 4-9#E;0¡0149§5Figure 47 : type d'aide à l’accès dans <strong>le</strong> cas 2. [Figure 47 : Scenario of users’ access in Case 2.]Nous ne détail<strong>le</strong>rons pas davantage <strong>le</strong> cas 1, notre analyse portera sur <strong>le</strong> cas 2.Pour mettre en place cette deuxième composante de l’aide, il faut implémenter dans un système labase de connaissance associée à notre modè<strong>le</strong> de description des jeux de données géographiques,et définition des fonctions d’aide à l’accès –dans <strong>le</strong> cas 2- que l’on peut associer à cette base deconnaissances. Le système possédant cette base de connaissances et ces fonctions est en fait unenvironnement de résolution coopérative de problèmes. Sa construction nécessite :- de coder <strong>le</strong>s mécanismes correspondant à la contribution du système au raisonnement globald’accès (ces mécanismes exploitent la base de connaissance),- d' établir un mode de communication entre l’utilisateur et <strong>le</strong> système permettant de construire<strong>le</strong> raisonnement global à partir de <strong>le</strong>urs contributions.Ce système est présenté en section 3.1.3. L’implémentation d’un prototype est décrite dans lasection 3.3.114


¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!3.1.2 Définition du modè<strong>le</strong>Nous décrivons dans cette section notre modè<strong>le</strong> de description des jeux de données géographiques intégrant <strong>le</strong>snotions clés de tâches, méthodes, et rô<strong>le</strong>s présentées précédemment section 2.1.3.3. Ces notions sont plusproches du raisonnement de l'homme que des "raisonnements" de systèmes informatiques. El<strong>le</strong>s ne peuvent pasêtre décrites faci<strong>le</strong>ment dans des structures manipulab<strong>le</strong>s par une machine comme des propositions logiques oudes objets java. Ceci explique d’ail<strong>le</strong>urs que <strong>le</strong>s méthodes classiques d’ingénierie de logiciel ne supportent pasencore de tels modè<strong>le</strong>s.Il est donc important de définir un premier modè<strong>le</strong> explicitant ces notions, avant même deproposer une implémentation de ce modè<strong>le</strong> tenant compte des contraintes informatiques. Cettesection est dédiée à la présentation du modè<strong>le</strong> d'expertise. Le modè<strong>le</strong> d'implémentation seraprésenté en section 3.3.Nous introduisons dans cette section <strong>le</strong>s éléments du modè<strong>le</strong>, <strong>le</strong>s connaissances géographiques qu'ils permettentde décrire, et ce que ces connaissances signifient dans un système d'aide à l'accès.3.1.2.1 Les tâchesUne tâche est un problème que l’on sait résoudre. Rappelons qu’une tâche ne correspond pas à un cas précis deproblème résolu (comme : al<strong>le</strong>r en métro <strong>le</strong> 6 mars 2000 à 15h de la place de la Bastil<strong>le</strong> à la Place de Clichy àParis) mais plutôt à une famil<strong>le</strong> de problèmes (comme : al<strong>le</strong>r d’un endroit de Paris à un autre en métro). Ladescription d’une tâche peut être spécifiée pour décrire comment résoudre un problème précis qui est un casparticulier du problème général décrit dans la tâche. Aussi, <strong>le</strong>s éléments que nous utilisons pour décrire une tâchedoivent tenir compte de la nécessité de décrire une famil<strong>le</strong> de problèmes particuliers.La description d'une tâche se décompose en :- la description du problème posé (facette déclarative de la tâche),- la description de la résolution du problème (facette opérationnel<strong>le</strong> de la tâche).La facette déclarative d'une tâche est décrite dans notre modè<strong>le</strong> par des entrées et des sorties qui sont desvariab<strong>le</strong>s génériques pouvant être spécifiées. Parmi <strong>le</strong>s sorties de la tâche, il y a souvent une sortie principa<strong>le</strong> quiest l’objectif de la tâche et il peut y avoir d'autres sorties qui sont des connaissances produites par la tâche sansêtre l'objectif véritab<strong>le</strong> de la tâche, on <strong>le</strong>s omet ou on <strong>le</strong>s appel<strong>le</strong> sorties secondaires.Il existe deux catégories de tâches selon que la facette opérationnel<strong>le</strong> varie ou non avec <strong>le</strong> contexte de réalisationde la tâche, c’est-à-dire en fonction de la spécification des entrées et sortie de la tâche. On distingue <strong>le</strong>s tâchescomp<strong>le</strong>xes qui décrivent un raisonnement comp<strong>le</strong>xe dont la résolution varie en fonction du contexte et <strong>le</strong>s tâchesprimitives qui décrivent un raisonnement dont la résolution ne varie pas. Cette distinction renvoie à un choix demodélisation. Il n'existe pas de limite franche dans la réalité entre des tâches comp<strong>le</strong>xes et des tâches primitives.115


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!La personne construisant un modè<strong>le</strong> choisit de détail<strong>le</strong>r une tâche en la modélisant comme une tâche comp<strong>le</strong>xe,ou de ne pas la détail<strong>le</strong>r en la modélisant comme une "boîte noire", une tâche primitive.Notons que la spécification d’une tâche pour décrire un problème précis se fait toujours en spécifiant la facettedéclarative de la tâche et en propageant cette spécification à une autre spécification de cette facette ou à unespécification de la facette opérationnel<strong>le</strong>.Dans un contexte d' aide à l' accès, une tâche est uti<strong>le</strong> car el<strong>le</strong> représente une manipulationgénérique de ressources. Une tâche dont <strong>le</strong>s deux facettes, déclarative et opérationnel<strong>le</strong>, sontspécifiées décrit une utilisation particulière de données géographiques.3.1.2.2 Les tâches comp<strong>le</strong>xesEléments de représentationUne tâche comp<strong>le</strong>xe est une tâche dont la facette opérationnel<strong>le</strong> dépend du contexte de réalisation de la tâche.Après spécification, la facette opérationnel<strong>le</strong> est un plan d' exécution, c' est-à-dire une structure de tâchesprimitives qui ne comporte pas de choix. Il est rarement possib<strong>le</strong> de décrire tous <strong>le</strong>s plans d’exécutions associés àune tâche comp<strong>le</strong>xe. La facette opérationnel<strong>le</strong>, appelée méthode, est composée d’un plan générique non détaillé(c’est-à-dire qui peut comporter des sous tâches comp<strong>le</strong>xes et des choix) et de connaissances permettant deguider la spécification de la tâche. Ces connaissances sont représentées sous forme de règ<strong>le</strong>s. Les prémisses detel<strong>le</strong>s règ<strong>le</strong>s sont toujours une spécification d’un rô<strong>le</strong> et <strong>le</strong>s conclusions soit une spécification d’un rô<strong>le</strong> soit unespécification du plan.Ces éléments sont résumés sur la figure Figure 48.Tâche Comp<strong>le</strong>xe- Entrées- Sortie- Sorties secondairesTâche Comp<strong>le</strong>xeMéthode- Règ<strong>le</strong>s- Plan non détailléSous-Tâchesfigurant dans <strong>le</strong> planTâche PrimitiveFigure 48: Eléments explicites représentant une tâche comp<strong>le</strong>xe et notations graphiques.Sans détail<strong>le</strong>r <strong>le</strong> processus de spécification d’une tâche comp<strong>le</strong>xe, qui est décrit plus loin 3.1.3, nous pouvonsfaire quelques remarques concernant <strong>le</strong>s connaissances de spécification d’une tâche comp<strong>le</strong>xe. Le pland’exécution d’une tâche spécifiée est obtenu à partir du plan non détaillé, en résolvant <strong>le</strong>s choix de ce plan, et enremplaçant <strong>le</strong>s tâches comp<strong>le</strong>xes par <strong>le</strong>urs plans non détaillés pour résoudre <strong>le</strong>s choix apparaissantéventuel<strong>le</strong>ment dans ses plans non détaillés, jusqu' à ce qu' il n' y ait plus ni tâches comp<strong>le</strong>xes ni choix dans <strong>le</strong>plan.116


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Les connaissances de spécification du plan d’une tâche comp<strong>le</strong>xe ne sont pas toutes décrites au niveau de cettetâche, el<strong>le</strong>s sont éga<strong>le</strong>ment décrites dans <strong>le</strong>s méthodes des tâches comp<strong>le</strong>xes entrant dans <strong>le</strong>s décompositionssuccessives de cette tâche. Globa<strong>le</strong>ment, <strong>le</strong>s connaissances de spécification d' une tâche sont :- des connaissances de résolution des choix du plan non détaillé. El<strong>le</strong>s sont représentées dans des règ<strong>le</strong>s de laméthode de cette tâche,- des connaissances de résolution des choix des plans non détaillés des sous-tâches comp<strong>le</strong>xes apparaissantdans <strong>le</strong> plan de cette tâche, et dans <strong>le</strong>s décomposition successives du plan. El<strong>le</strong>s sont représentées dans desrèg<strong>le</strong>s des méthodes de toutes <strong>le</strong>s sous-tâches de la tâche principa<strong>le</strong>.Par contre, <strong>le</strong>s règ<strong>le</strong>s de spécification d' une tâche comp<strong>le</strong>xe sont <strong>le</strong>s mêmes quel<strong>le</strong> que soit la tâche dans <strong>le</strong> plande laquel<strong>le</strong> el<strong>le</strong> puisse figurer.Notons qu' une tâche comp<strong>le</strong>xe est associée fina<strong>le</strong>ment à deux types de résultats. La sortie de la tâche (<strong>le</strong> résultatattendu) et la sortie produite par <strong>le</strong> plan d' exécution. Ces sorties ne sont pas identiques. Le résultat attendurenvoie au besoin d' un utilisateur et la sortie du plan détaillé renvoie à un résultat d' application, qui est une formede réponse au résultat attendu. Une difficulté dans la construction d' un tel modè<strong>le</strong> est que la sortie produite par <strong>le</strong>plan détaillé soit effectivement une réponse acceptab<strong>le</strong> au résultat attendu. Si <strong>le</strong> plan est exécuté, une autredifficulté est que <strong>le</strong> résultat obtenu soit effectivement la sortie prévue dans <strong>le</strong> plan.Les tâches comp<strong>le</strong>xes géographiquesLa notion de tâche comp<strong>le</strong>xe géographique est utilisée pour décrire des applications géographiques génériques,c’est-à-dire un objectif général lié à l’exploitation de données géographiques et une méthode généra<strong>le</strong> pouratteindre cet objectif. Une tâche comp<strong>le</strong>xe géographique doit pouvoir être spécifiée pour décrire une méthode derésolution de cas particuliers de ce problème générique. Prenons l' exemp<strong>le</strong> du calcul d' itinéraire. La méthodegénéra<strong>le</strong> de calcul d’itinéraire consiste à construire un graphe pondéré et à effectuer un calcul d’optimisation surce graphe. L’objectif peut être spécifié en précisant par exemp<strong>le</strong> un lieu de départ, un lieu d’arrivée, des étapessouhaitées, un ou plusieurs véhicu<strong>le</strong>s, des contraintes de coût en temps ou financier, des souhaits sur <strong>le</strong>s portionsd’itinéraires. En fonction de ces spécifications, <strong>le</strong>s éléments constituant <strong>le</strong> graphe sont spécifiés : <strong>le</strong>s entitésconstituant ses arêtes (tronçons routiers, lignes de métro,..), <strong>le</strong>s entités constituant ses sommets (vil<strong>le</strong>, bâtimentremarquab<strong>le</strong>, centre commercial,..), <strong>le</strong>s poids.Il est important d’expliciter des tâches transversa<strong>le</strong>s aux domaines d’applications, comme déterminer unelocalisation, rédiger une carte, mesurer une proximité ou changer de systèmes de coordonnées.Dans un contexte d' aide à l' accès, <strong>le</strong>s tâches comp<strong>le</strong>xes géographiques sont uti<strong>le</strong>s de plusieursfaçons :- Le besoin d' information géographique d' un utilisateur est reformulé dans <strong>le</strong> système commeune sortie de tâche comp<strong>le</strong>xe géographique.- La réponse au besoin est exprimée comme un plan d' exécution d' une tâche comp<strong>le</strong>xe, c' est-àdireune suite d' actions à effectuer pour dériver un résultat répondant au besoin reformulé.117


¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!3.1.2.3 Les tâches primitivesEléments de représentation d'une tâche primitiveCertaines tâches, dites primitives, ne sont pas décomposab<strong>le</strong>s. Leur méthode est un mécanisme figé. Ce sont destâches dont <strong>le</strong> point de vue déclaratif peut être spécifié mais pas <strong>le</strong> point de vue opérationnel, hormis la variationde paramètres.Les tâches primitives sont généra<strong>le</strong>ment utilisées pour décrire des traitements de données. Dans ce cas, <strong>le</strong>ssorties sont des jeux de données et <strong>le</strong>s entrées sont des jeux de données et <strong>le</strong>s va<strong>le</strong>urs des paramètres dutraitement.Tâche Primitive- Entrées- Sortie Principa<strong>le</strong>- Sorties- MécanismeFigure 49: Représentation graphique d'une tâche primitive.Les tâches primitives géographiquesLes tâches primitives géographiques décrivent des fonctions de dérivation d’information. Il peut s’agir d’untraitement sur des jeux de données géographiques, d’une opération de sé<strong>le</strong>ction de données ou encore del’application d’opérateurs sur des modè<strong>le</strong>s conceptuels, en particulier <strong>le</strong>s règ<strong>le</strong>s permettant de passer d’unélément d’une nomenclature à un élément plus spécifique.Un exemp<strong>le</strong> de tâche primitive géographique est la détermination de l’enveloppe d’une vil<strong>le</strong> grâce à l’applicationd’un algorithme de croissance morphologique à un ensemb<strong>le</strong> de bâtiments. L’entrée nécessaire est <strong>le</strong>s objetsbâtiments, <strong>le</strong> mécanisme est l’algorithme de croissance morphologique et la sortie obtenue est une surfacecorrespondant à l’extension spatia<strong>le</strong> de la vil<strong>le</strong>.Dans l' exemp<strong>le</strong> précédent de la tâche du calcul d' itinéraire, une tâche primitive entrant dans la décomposition decette tâche est un algorithme de calcul de graphe. Le corps de cette tâche primitive ne peut être modifié, hormisla définition de paramètre selon <strong>le</strong> type d’optimisation souhaité (vitesse, coût).Dans un contexte d' aide à l' accès, <strong>le</strong>s tâches primitives géographiques sont uti<strong>le</strong>s pour décrire, dans<strong>le</strong> plan d' exécution proposé en réponse, <strong>le</strong>s ressources SIG à acquérir.118


¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!3.1.2.4 Rô<strong>le</strong>s et domaineEléments de représentation des rô<strong>le</strong>s et du domaineLa notion de rô<strong>le</strong> est moins intuitive que cel<strong>le</strong> de tâche. Les entrées et sorties des tâches sont décrites par desrô<strong>le</strong>s. Ce sont des variab<strong>le</strong>s qui prennent <strong>le</strong>urs va<strong>le</strong>urs dans <strong>le</strong> domaine, c'est-à-dire dans <strong>le</strong> Quoi. Il est possib<strong>le</strong>de comparer cela à l’écriture d’une pièce de théâtre qui se fait non pas en utilisant des noms d’acteurs mais enutilisant des noms de personnages. Ces personnages sont des rô<strong>le</strong>s qui peuvent être tenus par divers acteurs.Un rô<strong>le</strong> est composé d'un nom et d'un ensemb<strong>le</strong> d'éléments du domaine qui décrit <strong>le</strong>s va<strong>le</strong>urs que peut prendre cerô<strong>le</strong> dans des réalisations de la tâche. Un ensemb<strong>le</strong> d'éléments du domaine peut être décrit de deux façons, parson extension ou par son intension. Son intension est représentée comme un ensemb<strong>le</strong> d'éléments du domainequi sont <strong>le</strong>s représentations génériques des éléments de l'ensemb<strong>le</strong>.Rô<strong>le</strong>- nom- va<strong>le</strong>urElément dudomaineLe rô<strong>le</strong> est lié à deséléments du domainequi sontses va<strong>le</strong>urs possib<strong>le</strong>sFigure 50 : Représentation d'un rô<strong>le</strong>.Les rô<strong>le</strong>s et <strong>le</strong> domaine décrivent <strong>le</strong> vocabulaire des tâches à divers niveaux.Les rô<strong>le</strong>s décrivent <strong>le</strong>s structures manipulées par des applications, ils explicitent la fonction des objetsmanipulés, comme <strong>le</strong>s sommets et arêtes d’un graphe, <strong>le</strong>s classes et <strong>le</strong>s critères d’une classification. Un rô<strong>le</strong> estdécrit par <strong>le</strong> nom de la variab<strong>le</strong>, et son ensemb<strong>le</strong> de candidats c’est-à-dire la désignation des éléments dudomaine sur <strong>le</strong>squels cette variab<strong>le</strong> prend sa va<strong>le</strong>ur. L’ensemb<strong>le</strong> des candidats a une va<strong>le</strong>ur par défaut trèsgénéra<strong>le</strong>, représentée au niveau du rô<strong>le</strong>. La spécification d'un rô<strong>le</strong> consiste à préciser cet ensemb<strong>le</strong>. Cela peutconsister à restreindre son extension, ou à spécifier son intension.Le Domaine décrit la connaissance spécifique aux objets manipulés : <strong>le</strong>s concepts et <strong>le</strong>s instances de cesconcepts. Les éléments du domaine sont <strong>le</strong> contenu manipulé dans une application correspondant à un casparticulier d’une tâche, i.e. des va<strong>le</strong>urs prises par <strong>le</strong>s rô<strong>le</strong>s dans des applications particulières.Les rô<strong>le</strong>s géographiquesLes rô<strong>le</strong>s sont <strong>le</strong> vocabulaire spécifique des tâches. Par exemp<strong>le</strong>, la description de connaissances de calculd’itinéraire s’appuie sur des termes spécifiques comme « point de départ », « point d’arrivée », « dessertes »,« temps de parcours », « véhicu<strong>le</strong> », « moyenne ». Ces termes sont des rô<strong>le</strong>s et ils appartiennent au COMMENT.Les rô<strong>le</strong>s concrétisent par ail<strong>le</strong>urs <strong>le</strong> lien du COMMENT et du QUOI en exprimant à quels éléments du domaine(<strong>le</strong> QUOI) renvoie <strong>le</strong> vocabulaire de la tâche. Par exemp<strong>le</strong>, <strong>le</strong> terme véhicu<strong>le</strong> renvoie aux termes : voiture, bus,119


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!vélo, f<strong>le</strong>uve. Ces derniers termes ne sont pas des rô<strong>le</strong>s car ils ne sont pas spécifiques à la tâche, ce sont deséléments du domaine. Les connaissances de valuation des rô<strong>le</strong>s, c’est-à-dire quels éléments du domaine peuvent<strong>le</strong> remplir, sont un élément essentiel de notre système. El<strong>le</strong>s peuvent consister en des mécanismes de sé<strong>le</strong>ctiondésignant dans <strong>le</strong>s diverses BDG <strong>le</strong>s objets ou lots de données correspondant à ces rô<strong>le</strong>s. Reprenons l’exemp<strong>le</strong>de la tâche de calcul d’itinéraire, dans <strong>le</strong> cas où <strong>le</strong> véhicu<strong>le</strong> est un convoi militaire spécial. Il est nécessaire dedéterminer quels objets vont remplir <strong>le</strong> rô<strong>le</strong> d’arête du graphe, Figure 51. Il s’agit des entités sur <strong>le</strong>squel<strong>le</strong>s cevéhicu<strong>le</strong> peut rou<strong>le</strong>r c’est-à-dire à des contraintes de largeur de la chaussée et de capacité à supporter un certainpoids. Cela peut se traduire en écrivant, pour chaque BDG, une expression désignant <strong>le</strong>s éléments de cette basequi remplissent <strong>le</strong>s conditions.Rappelons que cette distinction entre <strong>le</strong>s rô<strong>le</strong>s appartenant au COMMENT et <strong>le</strong> domaine représentant <strong>le</strong> QUOIest essentiel<strong>le</strong>. El<strong>le</strong> se traduit par <strong>le</strong>s propriétés suivantes Figure 51:- Un même élément du domaine peut être candidat pour remplir des rô<strong>le</strong>s différents selon la tâche en cours.Par exemp<strong>le</strong>, dans un calcul d’itinéraire, un tronçon de route est un arc de graphe. Dans un calcul denuisance, il est un foyer de pollution. Dans une planification de rénovation des chaussées il est une surface.Cela permet la réutilisation de mêmes ressources dans diverses tâches.- De plus divers éléments du domaine peuvent être manipulés dans une tâche de façon indistincte, c’est-à-diresans se préoccuper de distinguer ces éléments entre eux si cela n’est pas nécessaire pour la tâche, parexemp<strong>le</strong> des ponts et tronçons de route dans une tâche de calcul d’itinéraire. Cela permet de réutiliser unetâche dans des cas particuliers où <strong>le</strong>s objets manipulés ne sont pas <strong>le</strong>s mêmes.COMMENTCalculd’itinéraireRéfection deschausséesCalcul denuisancearête d’ungraphe denavigationsurface àrecouvrirfoyers depollutionbruit+airfoyers depollution airQUOIPontTronçon derouteUsineFigure 51 : Le QUOI est structuré en fonction du COMMENT grâce aux rô<strong>le</strong>s. [Figure 51 : The WHAT isstructured depending on the HOW, thanks to ro<strong>le</strong>s.]Le domaine géographiquePour chaque tâche, <strong>le</strong> domaine contient <strong>le</strong>s va<strong>le</strong>urs particulières de ses rô<strong>le</strong>s dans <strong>le</strong>s applications correspondantà des cas particuliers de cette tâche. Comme annoncé sur la Figure 35, cela implique de représenter dans <strong>le</strong>domaine deux grandes catégories d’objets :- Les objets permettant de spécifier un résultat attendu. Ces objets prennent souvent place dans <strong>le</strong> contexted’activités de l’homme comme se déplacer, passer ses vacances, observer. Par contre, ils ne sont pastoujours explicités dans <strong>le</strong>s données géographiques, comme par exemp<strong>le</strong> une vil<strong>le</strong>, une montagne, unerégion montagneuse, une navigation, une cartographie. Etant nécessaires au raisonnement de l’utilisateur, ilsdoivent être présents dans <strong>le</strong> modè<strong>le</strong> pour l’aider à exprimer son besoin.- Les objets permettant de décrire des entrées nécessaires ou des résultats obtenus : des jeux de données,extraits des BDG ou dérivés par application de traitements. L’aide que notre système apporte aux utilisateursne consiste pas à dériver des connaissances géographiques à la demande, mais à fournir des plans de120


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!dérivation de connaissances. Cette aide ne nécessite pas de manipu<strong>le</strong>r des données géographiques mais el<strong>le</strong>s’appuie sur la manipulation de métadonnées. C’est pourquoi <strong>le</strong> domaine ne comporte pas de BDG maisplutôt des descriptions des BDG. Il faut prévoir par ail<strong>le</strong>urs de représenter aussi des bases de données liées àdes activités géographiques et apportant de l’information uti<strong>le</strong> dans des applications géographiques, commedes données INSEE ou des données géologiques.Nous ne pouvons pas délimiter un domaine de l’information géographique. Cela est possib<strong>le</strong> lorsque l’expertiserenvoie à un « micro-monde » relativement isolé et comp<strong>le</strong>t tel que sa description comprend toutes <strong>le</strong>sconnaissances nécessaires à la résolution de problèmes surgissant dans ce « micro-monde ». Dans <strong>le</strong> cas del’information géographique, il n’est pas envisageab<strong>le</strong> de construire un tel « micro-monde » en raison du réseaucomp<strong>le</strong>xe de relations entre <strong>le</strong>s objets du monde réel. Seu<strong>le</strong> une description extensib<strong>le</strong> est possib<strong>le</strong>. Cettedescription doit pouvoir être croisée avec divers modè<strong>le</strong>s métiers.La Figure 52 résume <strong>le</strong>s éléments structurés dans un modè<strong>le</strong> des tâches géographiques.TâchesGéographiques(COMMENT)Tâche comp<strong>le</strong>xegéographique(application géographiquetypique)Associée àMéthode(méthode typique)décompose en soustâchesRésultat attenduTermes de contrô<strong>le</strong>sRo<strong>le</strong>(vocabulaire d' expressiondes besoins)A pour va<strong>le</strong>ursDomaineGéographique(QUOI) Concepts de l’informationgéographique appréhendéepar <strong>le</strong>s hommesTâche primitivegéographique(description d’un traitementde données géographiques)Entrée nécessaireRésultat obtenuRo<strong>le</strong>(élément du modè<strong>le</strong> demanipulation de la tâche)A pour va<strong>le</strong>urs(description de ) Jeux dedonnées géographiques,disponib<strong>le</strong>s ou dérivésFigure 52 : Connaissances touchant à l’information géographique structurées par notre modè<strong>le</strong> de tâches.[Figure 52 : Geographic information e<strong>le</strong>ments that can be structured by our tasks model.]Dans un contexte d' aide à l' accès, la modélisation du domaine et des rô<strong>le</strong>s géographiques est uti<strong>le</strong>de plusieurs façons :- Le domaine décrit, entre autres, <strong>le</strong>s jeux de données que l' utilisateur peut exploiter. Il s' agit duQuoi géographique informatique.- Les rô<strong>le</strong>s des tâches primitives géographiques apparaissant dans <strong>le</strong> plan d' exécution proposéen réponse ont pour va<strong>le</strong>ur des éléments du Quoi géographique informatique. Ils désignent <strong>le</strong>sjeux de données que l' utilisateur peut utiliser pour dériver l' information qu' il souhaite.- Le domaine décrit éga<strong>le</strong>ment <strong>le</strong>s termes utilisés dans <strong>le</strong>s représentations de l' espacegéographique que se font des utilisateurs. Il s' agit du Quoi géographique des hommes.- Les rô<strong>le</strong>s des tâches comp<strong>le</strong>xes géographiques désignent <strong>le</strong>s termes pertinents pour décrire <strong>le</strong>besoin et <strong>le</strong> contexte de l' utilisateur. Ces termes prennent <strong>le</strong>ur va<strong>le</strong>ur dans <strong>le</strong> Quoigéographique des hommes.121


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!3.1.2.5 Un langage de description de tâchesNous proposons un langage permettant de décrire sans ambiguïtés <strong>le</strong>s connaissances importantes de notremodè<strong>le</strong>. Ce langage ne cherche pas à décrire des tâches de façon exhaustive mais à expliciter des connaissancessuffisantes dans notre contexte et à <strong>le</strong>s structurer de façon à ce qu'el<strong>le</strong>s soient exploitab<strong>le</strong>s. L'exploitation desdescriptions de tâches géographiques ne consiste pas dans notre contexte à réaliser ces tâches mais à déterminerla tâche représentant <strong>le</strong> mieux <strong>le</strong> besoin de l'utilisateur et la réponse à ce besoin.Ce langage est défini à l'aide de la grammaire Backus-Naur Form étendue. La Figure 53 présente notregrammaire. Nous la commentons ci-dessous.Une tâche est définie comme une tâche comp<strong>le</strong>xe ou une tâche primitive.Une tâche comp<strong>le</strong>xe est définie par <strong>le</strong>s éléments suivants :- son nom, suivi éventuel<strong>le</strong>ment d'une description,- sa sortie qui est un rô<strong>le</strong>,- ses entrées éventuel<strong>le</strong>s qui sont des rô<strong>le</strong>s,- ses sorties secondaires éventuel<strong>le</strong>s qui sont des rô<strong>le</strong>s- sa méthode.Une tâche primitive est définie par une description sommaire ou détaillée. Sa description détaillée est proche decel<strong>le</strong> d'une tâche comp<strong>le</strong>xe à la différence près qu'el<strong>le</strong> n'a pas de méthode mais un mécanisme. Un mécanisme estdéfini par son nom.Il s'agit là de la description de tâches génériques. Il est possib<strong>le</strong> de décrire des spécifications de tâchesgénériques. Une tâche spécifiée est décrite par <strong>le</strong> nom de la tâche générique, et par <strong>le</strong>s rô<strong>le</strong>s spécifiés, c'est-à-dire<strong>le</strong>s rô<strong>le</strong>s génériques associés aux ensemb<strong>le</strong>s spécifiés. Soulignons que la description d'une tâche comp<strong>le</strong>xegénérique n'explicite pas nécessairement tous <strong>le</strong>s rô<strong>le</strong>s de cette tâche. Certains rô<strong>le</strong>s, dont on ne peut définir defaçon générique <strong>le</strong>s candidats a priori, ne sont décrits qu'à partir du moment où ils sont spécifiés.Un rô<strong>le</strong> est défini par un nom suivi d'un ensemb<strong>le</strong> qui décrit <strong>le</strong>s va<strong>le</strong>urs candidates du rô<strong>le</strong>.Un ensemb<strong>le</strong> peut être défini par un nom, par une intension, par une extension, ou comme l'union de deuxensemb<strong>le</strong>s. Il peut aussi être défini comme <strong>le</strong>s va<strong>le</strong>urs d'une propriété d'un élément.Une définition intensive d'un ensemb<strong>le</strong> consiste à donner des conditions d'appartenance à cet ensemb<strong>le</strong>. El<strong>le</strong>s'appuie sur un ou plusieurs éléments génériques du domaine, par exemp<strong>le</strong> Int(entité) s'appuie sur l'élément dudomaine entité pour désigner l'ensemb<strong>le</strong> de tous <strong>le</strong>s éléments du domaine qui sont des entités.Une définition extensive d'un ensemb<strong>le</strong> consiste à énumérer ses éléments. C'est donc une énumération d'élémentsdu domaine.Un élément du domaine est défini par un nom et éventuel<strong>le</strong>ment des propriétés. Une propriété est définie par sonnom et l'ensemb<strong>le</strong> de ses va<strong>le</strong>urs. Par exemp<strong>le</strong>, l'élément nommé "entité" a une propriété nommée "est identifiéepar" qui a pour va<strong>le</strong>urs possib<strong>le</strong>s l'ensemb<strong>le</strong> défini par l'intension "identifiant sémantique".Un élément du domaine peut aussi être désigné par un ensemb<strong>le</strong> (tel qu'il est l'élément définissant l'intension decet ensemb<strong>le</strong>), ou par un rô<strong>le</strong> (tel qu'il est l'élément définissant l'intension des candidats).Dans la description courante d'une tâche, un même mot, comme "système de référence" renvoiesouvent soit à un élément du domaine, soit à un ensemb<strong>le</strong> (qu'il définit intensionnel<strong>le</strong>ment), soit àun rô<strong>le</strong> (dont il définit intensionnel<strong>le</strong>ment <strong>le</strong>s candidats). Dans notre langage, la distinction entreces trois notions est clairement établie car ce sont des types différents. Par exemp<strong>le</strong> <strong>le</strong> rô<strong>le</strong>"système de référence" dans la tâche de localisation renvoie aux systèmes de références décritsdans <strong>le</strong> domaine, ou à une cartographie, ou à une navigation. L'ensemb<strong>le</strong> "système de référence"122


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!renvoie aux systèmes de références décrits dans <strong>le</strong> domaine qui peuvent être des systèmes directs,des systèmes linéaires, des systèmes d'adresses posta<strong>le</strong>s ou des systèmes administratifs.Une méthode est définie par :- sa description éventuel<strong>le</strong> en langage naturel<strong>le</strong>,- des règ<strong>le</strong>s éventuel<strong>le</strong>s de proposition de spécification,- des règ<strong>le</strong>s éventuel<strong>le</strong>s de propagation de spécification,- des règ<strong>le</strong>s éventuel<strong>le</strong>s de stratégie, c'est-à-dire de modification du plan,- un plan non détaillé qui est une structure de tâches.Une structure de tâche est une structure classique tel<strong>le</strong> que cel<strong>le</strong>s utilisées dans <strong>le</strong>s langages procéduraux. Lesprocédures élémentaires sont ici des tâches spécifiées. Une structure de tâches est composée de tâches spécifiées,ou de structures de tâches, et d'un terme d'enchaînement qui peut être "ou", "et", "tant que","si"…"alors".."sinon". Les expressions booléennes utilisées dans <strong>le</strong>s "si" et "tant que" peuvent être des va<strong>le</strong>ursexprimées par un utilisateur ou des tests effectués sur des rô<strong>le</strong>s, et plus précisément sur <strong>le</strong>urs candidats.Une structure de tâche possède éga<strong>le</strong>ment éventuel<strong>le</strong>ment un vocabulaire. Le vocabulaire d'un structure sert àdésigner des rô<strong>le</strong>s importants définis dans <strong>le</strong>s tâches composant cette structure. Un terme du vocabulaire estdéfini par un nom et un pointeur vers des rô<strong>le</strong>s.Un pointeur vers des rô<strong>le</strong>s peut être de deux type. Ce peut être un pointeur direct vers des rô<strong>le</strong>s appartenant à dessous-tâches de la structure. Ce peut être un pointeur indirect qui désigne non pas des rô<strong>le</strong>s mais des termes parmi<strong>le</strong>s vocabulaires des sous-structures.Les règ<strong>le</strong>s de proposition ou de propagation de spécification sont des règ<strong>le</strong>s de spécification définie par unespécification de rô<strong>le</strong> (prémisse) qui implique une ou plusieurs spécifications de rô<strong>le</strong>s (conclusion).Une spécification de rô<strong>le</strong> est définie par <strong>le</strong> nom du rô<strong>le</strong> spécifié suivi éventuel<strong>le</strong>ment d'un spécificationd'ensemb<strong>le</strong> (portant sur <strong>le</strong>s candidats du rô<strong>le</strong>).Une spécification d'ensemb<strong>le</strong> est définie par un préfixe suivi d'un ensemb<strong>le</strong>.Cette description est sommaire mais el<strong>le</strong> est suffisante à ce stade. Lors de l'implémentation, il sera nécessaire destructurer davantage ces notions de spécification d'ensemb<strong>le</strong>, spécification de rô<strong>le</strong> et règ<strong>le</strong>s de spécification.Les règ<strong>le</strong>s de stratégie sont définies par une spécification de rô<strong>le</strong> (prémisse) qui implique une action sur <strong>le</strong> plan(conclusion).Une action sur <strong>le</strong> plan consiste à remplacer une structure par une autre c'est-à-dire généra<strong>le</strong>ment résoudre unchoix, par exemp<strong>le</strong> remplacer une structure du type " OU(structure1, structure2, structure3,..) " par " structure1".Soulignons que <strong>le</strong> plan n'est pas modifié uniquement par <strong>le</strong>s actions sur <strong>le</strong> plan. Les règ<strong>le</strong>s de propagation despécification agissent éga<strong>le</strong>ment sur <strong>le</strong> plan puisqu'el<strong>le</strong>s peuvent spécifier un rô<strong>le</strong> apparaissant dans des tâches duplan.123


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Vocabulaire terminal :Nom : chaîne de caractère identifiant une tâche, un rô<strong>le</strong>, un ensemb<strong>le</strong>, un élément dudomaine ; Description : texte en langage naturel ; Nombre : un entier positif ou "n"; ChoixUtilisateur :va<strong>le</strong>ur booléenne::=: |::=: TC Nom [(Description)]sortie : [entrée : {;}][sortie secondaire : {;}]méthode : ::=: | TP(Description)::=: TP Nom [()]sortie : [entrée : {;}][sortie secondaire : {;}]mécanisme : < Tâche spécifiée >::=:Nom{/ = |} ::=: Nom::=: Nom [()]::=: Ens Nom | Int([{;}]) |Ext([{;}]) |+ | up<strong>le</strong>t de | "Nom" de ::=: Nombre[.. Nombre]::=: Nom [(propriétés : {;})]|Elt.()|Elt.()::=:"Nom" ::= [Description][Propos spécif : [{; }]][Propag spécif : [{; }]][Stratégie: [{;}]][Plan non détaillé : ]::=: [structure Nom][Vocabulaire : Nom[()][{,Nom[()]}]][ |ET([{;}]) |OU([{;}]) |TANT QUE ()REPETE () |SI ALORS SINON FINSI ][{}]::=: |^|v::=: |ChoixUtilisateur::=:Nom::=: Nom [dans | dans ]6::=: [{,}]6 ::=: [{,}]::=: Spécification de Nom [()]< SpécificationEnsemb<strong>le</strong>>::=: ::=: =|≠|+=|-=|⊃|⊂|⊄::=: Figure 53:Définition du vocabulaire et de la grammaire de notre langage de description de tâches, à l'aide dulangage Extended Backus-Naur Forms. [Figure 53:Definition of the vocabulary and grammar of our tasksdescription language, with the extended BNF language.]124


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Dans une optique d’aide à l’accès à l’information géographique, ce langage de description permetde :- Stocker une expertise de manipulation que ne possèdent pas <strong>le</strong>s utilisateurs et qui estnécessaire pour concevoir une application. Cette expertise consiste à déterminer pour unetâche son modè<strong>le</strong> de manipulation (<strong>le</strong>s rô<strong>le</strong>s) et quel contenu peut être manipulé avec cemodè<strong>le</strong> (<strong>le</strong>s ensemb<strong>le</strong>s de va<strong>le</strong>urs associés aux rô<strong>le</strong>s).- Expliciter des connaissances permettant de reformu<strong>le</strong>r un besoin d' utilisateur et de préciser deséléments du contexte de cet utilisateur, dans la mesure où ils sont pertinents pour ladétermination d' une réponse au besoin.La section 3.1.3 présente <strong>le</strong>s principes de l' exploitation d' une base de connaissances structurée avec notrelangage. L' implémentation de ce langage fera l' objet de la section 3.3.3.1.3 Un système d’aide à l’accèsUne deuxième composante de notre contribution, complémentaire du modè<strong>le</strong> présenté dans la sectionprécédente, est un système aidant l' utilisateur à exploiter une base de connaissances structurée selon ce modè<strong>le</strong>pour résoudre son problème d' accès. Ce système est un système de résolution coopérative de problème.Nous présentons dans cette section l' architecture globa<strong>le</strong> de notre système et ses fonctionnalités.Architecture globa<strong>le</strong> du systèmeRappelons qu’un système à base de connaissances est globa<strong>le</strong>ment organisé en une base de connaissances, <strong>le</strong>sconnaissances statiques, et un moteur, <strong>le</strong>s connaissances dynamiques, manipulant cette base, comme décritFigure 54. Dans notre cas, l’ensemb<strong>le</strong> du modè<strong>le</strong> des raisonnements géographiques est inclus dans la base deconnaissances du système.Architecture générique d’un système à base de connaissancesBASE DECONNAISSANCESMOTEURDomaine du systèmeBase de connaissancesassociée aumodè<strong>le</strong> de tâchesgéographiquesTâchesdu systèmeArchitecture de notre systèmeFigure 54 : L’architecture de notre système. [Figure 54 : Architecture of our system ]Les tâches géographiques ne font pas partie de la dynamique de raisonnement du système. Cettedynamique est représentée dans d' autres tâches, <strong>le</strong>s tâches du système, qui permettent d' accéder à125


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!la base de tâches géographiques. Les tâches géographiques sont fina<strong>le</strong>ment des éléments dudomaine du système.Fonctionnalités du systèmeRappelons que parmi <strong>le</strong>s cas d'accès introduits précédemment section 3.1.1. nous nous restreignons au cas décritFigure 47, où un utilisateur a un besoin de connaissances géographiques et souhaite savoir quel<strong>le</strong>s donnéesacquérir et comment <strong>le</strong>s utiliser pour dériver ces connaissances. Le système doit aider l’utilisateur à exprimer sonbesoin, lui répondre en retour quel<strong>le</strong>s ressources il doit exploiter, et de quel<strong>le</strong> façon, pour obtenir une réponse àson besoin.L’exploitation du modè<strong>le</strong> par <strong>le</strong> système pour remplir ces fonctionnalités ne consiste donc pas àréaliser une tâche géographique modélisée mais à spécifier une tâche géographique tel<strong>le</strong> que safacette déclarative représente <strong>le</strong> besoin de l'utilisateur et son plan détaillé représente la réponse à cebesoin.Ce processus de spécification est la détermination d'une tâche comp<strong>le</strong>xe. Il consiste à construire un pland'exécution de cette tâche, à partir de son plan détaillé, en itérant deux processus : remplacer <strong>le</strong>s tâchescomp<strong>le</strong>xes par <strong>le</strong>ur plan non détaillé jusqu'à ce qu'il ne reste plus de tâche comp<strong>le</strong>xe, et éliminer <strong>le</strong>s choixapparaissant éventuel<strong>le</strong>ment dans <strong>le</strong>s plans non détaillés participant à cette décomposition, Figure 55.C'est donc un processus de spécification cohérente des facettes déclaratives et opérationnel<strong>le</strong>s d'une tâchegéographique et des tâches géographiques entrant dans ses décompositions successives.Facette déclarative• Sortie(générique)• Entrées (génériques)Tâche Comp<strong>le</strong>xe (stockée)Facette opérationnel<strong>le</strong>• Plan non détaillé• Règ<strong>le</strong>s de spécificationSpécificationdes rô<strong>le</strong>sItération de ladéterminationRésolution des choixdu plan etélimination destâches comp<strong>le</strong>xes(remplacées par <strong>le</strong>urplan non détaillé)Tâche spécifiée (créée pour l’accès d’un utilisateur donné)Facette déclarative• Sortie (spécifiée)• Entrées (spécifiées)Facette opérationnel<strong>le</strong>• Plan détaillé (peut être exécuté)Reformulation du besoin etdu contexte de l ’utilisateurProposition d’utilisation deressources pour répondre aubesoin de l’utilisateurFigure 55: Processus de détermination d' une tâche comp<strong>le</strong>xe conduisant à une tâche représentant <strong>le</strong> besoin del' utilisateur et une réponse à ce besoin.[Figure 55: Determination of a comp<strong>le</strong>x task <strong>le</strong>ading to a specified taskrepresenting the user' s need and an answer to this need.]126


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Ce processus est réparti entre l’utilisateur et <strong>le</strong> système. L’utilisateur, spécifie en fonction de son proprecontexte, la sortie et <strong>le</strong>s entrées de la tâche en cours de spécification. Pour faire cela, il est aidé par <strong>le</strong> système.Le système construit peu à peu <strong>le</strong> plan d' exécution de la tâche en suivant <strong>le</strong> principe schématisé Figure 55.Nous décrivons de façon graphique <strong>le</strong>s tâches du système correspondant à ces fonctionnalités Figure 56.TACHES DU SYSTEMETC0 Aider à la sé<strong>le</strong>ction d’information uti<strong>le</strong>Sortie : Plan détaillé d'exploitation de jeux dedonnées géographiques conduisant à un résultatrépondant au besoin de l'utilisateurMéthodeSé<strong>le</strong>ctionnerTâche-ParUtilisateurLe plan de la tâche sé<strong>le</strong>ctionnée devient plan global, la tâche devient tâche couranteTant qu'il reste des OU ou des Tâches Comp<strong>le</strong>xes dans <strong>le</strong> plan global et que l'utilisateur estsatisfait, répéter :- Appliquer RésoudrePlan au plan global et à la tâche courante- Considérer la Tâche Comp<strong>le</strong>xe figurant <strong>le</strong> plus tard dans <strong>le</strong> plan, el<strong>le</strong> devient latâche courante, el<strong>le</strong> est remplacée dans <strong>le</strong> plan global par son plan non détaillé.TP Sé<strong>le</strong>ctionnerTâche-ParUtilisateurSortie : une tâche géographiqueMécanisme : Présenter <strong>le</strong>s sorties destâches géographiques à l'utilisateurqui en choisit une proche de sonobjectifTC2 RésoudrePlanSortie : Plan sans OUEntrées : Plan, tâchegéographiqueMéthodeTant que <strong>le</strong> plan comporte des OU, répéter :- Appe<strong>le</strong>r TC2-1, TP2-2, TP2-3- Appe<strong>le</strong>r TC2-4 sur chaque sortie deTC2-1- Si <strong>le</strong> plan a été modifié appe<strong>le</strong>r TC2-5TC2-1 Spécifierun rô<strong>le</strong> d'une tâcheSortie : Spécification d'unrô<strong>le</strong> de la tâche en entréeEntrée : Tâchegéographique couranteMéthodePermettre àl'utilisateur de réduirel'ensemb<strong>le</strong> descandidats d'un desrô<strong>le</strong>s de la tâcheTP2-2 ChercheRèg<strong>le</strong>PropagSSortie : règ<strong>le</strong>sEntrées : tâche, Spécification derô<strong>le</strong>Mécanisme : lire <strong>le</strong>s règ<strong>le</strong>s depropagation de spécification de latâche, et fournir en sortie <strong>le</strong>srèg<strong>le</strong>s tel<strong>le</strong>s que la spécificationde rô<strong>le</strong> (2e entrée) correspond àla prémisse (éventuel<strong>le</strong>ment enétant plus spécifique)TP2-3 ChercheRèg<strong>le</strong>ProposSSortie : règ<strong>le</strong>sEntrées : tâche, prémisseMécanisme : id que TP2-2 mais sur <strong>le</strong>srèg<strong>le</strong>s de proposition de spécificationTC2-4 Spécifier un planSortie : Plan modifiéEntrées : plan, tâche,specification de rô<strong>le</strong>TP2-6 Présenter<strong>le</strong>s propositionsde spécificationTP2-5 Présenter<strong>le</strong> planFigure 56 : Exploitation du modè<strong>le</strong> de tâches géographiques pour l’aide à la sé<strong>le</strong>ction d’information uti<strong>le</strong>.[Figure 56 : Exploitation of the geographic tasks model to enhance user’s se<strong>le</strong>ction of useful information.]Nous avons proposé un langage de description de tâches dédié à la description de tâches géographiques. Celangage peut être utilisé pour décrire des tâches du système. Son utilisation a alors pour objectif d' expliciter destâches du système pour <strong>le</strong>s réaliser ensuite. En particulier nous ne faisons pas figurer des "OU" dans <strong>le</strong>s plansnon détaillés des tâches décrites. Pour réaliser une tâche du système décrite dans notre langage, il faut suivre <strong>le</strong>plan non détaillé et dès qu' un rô<strong>le</strong> est produit regarder dans la méthode si cela conduit à la spécification d' autresrô<strong>le</strong>s.127


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!Dans la description de tâches du système, <strong>le</strong>s termes décrits comme peuvent être des élémentsintervenant dans la description de tâches géographiques non pas comme éléments du domaine mais comme, , , et autres termes. Une description de tâche géographique est décrite comme un du système de la façon suivante :Tâche géo ( propriétés : "sortie" Int(Rô<strong>le</strong> géo) ;"entrées" Int(Rô<strong>le</strong> géo [{;Rô<strong>le</strong> géo}])"méthode" Int(Méthode) )Une méthode géographique est définie de façon similaire en prenant <strong>le</strong>s mots utilisés dans la grammaire BNFpour décrire ces champs et en définissant pour chacun une propriété. Pour décrire <strong>le</strong>s règ<strong>le</strong>s nous explicitons <strong>le</strong>spropriétés "prémisse" et "conclusion".Règ<strong>le</strong>Specif géo (propriétés : "prémisse" Int(SpécificationRo<strong>le</strong> géo);"conclusion" Int(SpécificationRo<strong>le</strong> géo [{;SpécificationRo<strong>le</strong> géo}]) )Règ<strong>le</strong>Stratégie géo (propriétés : "prémisse" Int(SpécificationRo<strong>le</strong> géo);"conclusion" Int(ActionPlan [{;ActionPlan}]))SpécificationRo<strong>le</strong> géo (propriétés : "rô<strong>le</strong>" Int(Rô<strong>le</strong> géo);"préfixe" Int(Préfixe);"ensemb<strong>le</strong>" Int(Ensemb<strong>le</strong> géo))Une structure de tâches géographiques est définie de la même façon comme un :Structure de tâches géo (propriétés : "nom" Int(Nom);"vocabulaire" Int(SpécificationRo<strong>le</strong> géo);"terme enchainement" Int(Terme[{;Terme}]);"sousStructures" Int(structure de tâches géo[{;structure de tâches géo}])"sousTâches" Int(tâches géo[{;tâches géo}])Dans la suite, nous détaillons <strong>le</strong>s tâches comp<strong>le</strong>xes du système Figure 56 mais nous ne détaillons pas <strong>le</strong>s tâchesprimitives.TC TC0 (Aider à la sé<strong>le</strong>ction d'information uti<strong>le</strong>)sortie : Int(plan géo détaillé)méthode : Propag spécif : Spécification de "sortie" de 6 Sé<strong>le</strong>ctionnerTâcheParUtilisateur Spécification deplan géo global (="plan non détaillé" de Elt.("sortie" deSé<strong>le</strong>ctionnerTâcheParUtilisateur)), Spécification de tâche géo courante (="sortie"de Sé<strong>le</strong>ctionnerTâcheParUtilisateur) ;Spécification de "sortie" de 6 Sé<strong>le</strong>ctTcDsPlan Spécification de tâche géo courante(= "sortie" de Sé<strong>le</strong>ctTcDsPlan) ;Plan non détaillé : Vocabulaire : plan géo global, tâche géo couranteET( Sé<strong>le</strong>ctionnerTâcheParUtilisateur/entrée=Int(Tâches géographiques);TANT QUE ((plan géo global⊂Int(Plan géographique/termeenchainement⊃Ext(OU))) v(plan géo global⊂Int(Plangéographique/sousTâches⊄Int(Tâches primitives géographiques)))REPETE ( ET (RésoudrePlan/plan géo=plan géo global/tâche géo =tâchegéo courante ;Sé<strong>le</strong>ctTcDsPlan/plan géo=plan géo global;SubstitutDsPlan/plan géo=plan géo global;tâche géo=tâche géocourante))128


¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!)TC RésoudrePlan (TC2 sur Figure 56, Résoudre <strong>le</strong> plan d'une tâche, i.e. : en<strong>le</strong>ver <strong>le</strong>s choix qui apparaissent)sortie : plan géoentrée : plan géo, tâche géométhode : Propag spécif : Spécification de "sortie" de SpecifRô<strong>le</strong>sTâches6 Spécification de spécification géocourante (="sortie" de SpecifRô<strong>le</strong>sTâches) ;Spécification de "sortie" de ChercheRèg<strong>le</strong>PropagS 6 Spécification de règ<strong>le</strong> depropagation géo (= "sortie" de ChercheRèg<strong>le</strong>PropagS) ;Spécification de "sortie" de ChercheRèg<strong>le</strong>ProposS 6 Spécification de règ<strong>le</strong> deproposition (= sortie de ChercheRèg<strong>le</strong>ProposS);Spécification de "sortie" de SpecifiePlan 6 Spécification de spécificationcourante(="sortie" de OteUnSing<strong>le</strong>tonA(Ensemb<strong>le</strong> = "candidats" despécifications propagées)) ;Spécification de la sortie de AppliqueRèg<strong>le</strong> 6 Spécification de spécificationspropagées (="sortie" de AppliqueRèg<strong>le</strong>)Plan non détaillé : Vocabulaire : spécification géo courante, règ<strong>le</strong> de propagation géo, règ<strong>le</strong> deproposition géo, spécification géo propagéeTANT QUE (plan géo global⊂Int(Plan géographique/termeenchainement⊃Ext(OU)))REPETE ( ET (SpecifRô<strong>le</strong>sTâches /tâche géo= tâche géo courante ;ChercheRèg<strong>le</strong>PropagS/tâche géo= tâche géo courante/prémisse =spécification géo courante ;ChercheRèg<strong>le</strong>ProposS/tâche géo= tâche géo courante/prémisse =spécification géo courante ;SpécifiePlan /plan géo=plan géo global/tâche géo=tâche géocourante/spécification=spécification géo courante ;AppliqueRèg<strong>le</strong>/règ<strong>le</strong>=règ<strong>le</strong> de propagation géo;TANT QUE (spécification propagée géo ≠∅);REPETE (SpécifiePlan /plan géo=plan géo global/tâchegéo=tâche géo courante/spécification=spécification géocourante ;);PresentePlan/plan géo=plan géo global;Presenterèg<strong>le</strong>s/règ<strong>le</strong>s=règ<strong>le</strong>s géo de proposition;) )La tâche SpécifRô<strong>le</strong>sTâche consiste à spécifier la facette déclarative de la tâche géographique courante. Lesystème aide l’utilisateur en lui fournissant un vocabulaire dans <strong>le</strong>quel il est capab<strong>le</strong> de préciser la sortie de latâche en question, voire <strong>le</strong>s entrées. Cette aide renvoie à deux mécanismes différents.Prenons l’exemp<strong>le</strong> d’un utilisateur dont <strong>le</strong> besoin est de répondre à la question “où est Paris?”. Le systèmefournit un vocabulaire à l’utilisateur pour spécifier ce qu’est “Paris” : une vil<strong>le</strong> identifiée par <strong>le</strong> mot « Paris »dans une nomenclature. Cette aide consiste à utiliser un modè<strong>le</strong> du domaine suffisamment riche pour qu'il puisseservir d'ontologie entre <strong>le</strong> système et l'utilisateur.Un autre exemp<strong>le</strong> est celui d'un utilisateur qui ne sait pas préciser ce que veut dire “où est” c’est-à-dire <strong>le</strong> formatde localisation qu’il attend, et qui a déjà spécifié que l'entité qu'il voulait localiser est une vil<strong>le</strong>. Le système peutalors l’aider en interprétant <strong>le</strong> fait que l’utilisateur recherche la localisation d’une vil<strong>le</strong> et en proposant deremplacer “où est” par “dans quel région?”, “dans quel pays?”. Cette aide consiste à appliquer une règ<strong>le</strong> :"l'entité à localiser est un élément d'une nomenclature compositionnel<strong>le</strong> (la nomenclature administrative) doncune localisation peut consister à donner un élément de plus haut niveau dans la nomenclature". Cette règ<strong>le</strong> estune heuristique.129


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "! "#%$&('*)+ !, "!-,.! ¥/%01 2!£/3 4,5£ "!TC SpécifRô<strong>le</strong>sTâche (TC2-1 sur Figure 56, Spécifier <strong>le</strong>s rô<strong>le</strong>s d'une tâche)sortie : Specification de rô<strong>le</strong>entrée : tâche géométhode : Plan non détaillé : Vocabulaire : rô<strong>le</strong>s à spécifier ("entrées" de tâche géo, "sortie" de tâche géo) ;ensemb<strong>le</strong> courantTANT QUE (rô<strong>le</strong>s à spécifier≠∅) REPETE ( ET (TP(candidats de Ensemb<strong>le</strong> courant = "sortie" de OteUnSing<strong>le</strong>tonA/Ensemb<strong>le</strong> ="candidats" de rô<strong>le</strong>s à spécifier);SpécifieEnsemb<strong>le</strong>/Ensemb<strong>le</strong>= ensemb<strong>le</strong> courant;))La tâche SpécifieEnsemb<strong>le</strong> se fait de la façon suivante. Si l'ensemb<strong>le</strong> a une extension, la tâche propose de réduirecette extension. Si l'ensemb<strong>le</strong> n'a pas d'extension ou que <strong>le</strong> proposition a été refusée, la tâche affiche <strong>le</strong>spropriétés de l'élément définissant l'intension de l'ensemb<strong>le</strong> et propose de spécifier <strong>le</strong>s va<strong>le</strong>urs de ces propriétés.Nous ne la détaillons pas ici pour ne pas alourdir cette section.TC SpécifiePlan (tâche TC2-4 sur Figure 56, Spécifier un plan géographique)sortie : planentrée : plan, tâche, spécification de rô<strong>le</strong>méthode : Propag Spécif : Spécification de "sortie" de ChercheRèg<strong>le</strong>Stratégie 6 Spécification de actions(="conclusion" de "sortie" de ChercheRèg<strong>le</strong>Stratégie);Plan non détaillé : Vocabulaire : actions ; action couranteET( ChercheRèg<strong>le</strong>Stratégie/tâche=tâche/prémisse=spécification de rô<strong>le</strong>TANT QUE (actions ≠∅)REPETE (ET(TP(OteUnSing<strong>le</strong>tonA/Ensemb<strong>le</strong> = candidats de actions/sortie= actioncourante);AppliqueAction/plan=plan/action=action courante;))Pour chacune des fonctionnalités prévoyant une contribution de l'utilisateur, il est nécessaire de définir desinterfaces pour permettre la communication entre l’utilisateur et <strong>le</strong> système. Nous verrons ces éléments lors de laprésentation du prototype, section 3.3.130


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "!$#"% &('*)"+,¥ -/. - "!0 !§1-/! - 2!324$5 376/. 3.2 Spécialisation et instanciation du modè<strong>le</strong>Nous utilisons dans cette section <strong>le</strong> modè<strong>le</strong> de tâches, mis en place dans la section précédente, pour modéliserdes connaissances de raisonnements géographiques particulières. L’enjeu de cette étape est d’évaluer la capacitéde notre modè<strong>le</strong> à décrire, distinguer et relier des catégories QUOI et COMMENT parmi <strong>le</strong>s connaissancestouchant à l’information géographique.L’opérationnalisation de ce modè<strong>le</strong> sera détaillée dans la section 3.3 qui présente <strong>le</strong> prototype du système expertexploitant ce modè<strong>le</strong> de connaissances. Toutefois, lorsque nous introduisons de nouveaux éléments du modè<strong>le</strong>,nous détaillons comment ils peuvent être exploités par un système pour aider l’accès d’utilisateurs.3.2.1 Spécification du domaine géographiqueDe façon généra<strong>le</strong>, la construction d’un modè<strong>le</strong> d’expertise de tâches ne se fait pas en modélisant un à un <strong>le</strong>sdivers niveaux : tâches comp<strong>le</strong>xes, tâches primitives, domaine. Il y a un va et vient entre <strong>le</strong>s modélisations dechaque niveau. Quand on cherche à construire <strong>le</strong> modè<strong>le</strong> d’une tâche de haut niveau, comme la configurationd’un système informatique ou d’un emploi du temps, <strong>le</strong> niveau qui initie la modélisation est <strong>le</strong> niveau des tâches.Dans notre cas, <strong>le</strong> modè<strong>le</strong> construit n’est pas dédié à une tâche spécifique mais à un domaine spécifique. Aussi,avant de modéliser des tâches géographiques, nous nous attachons à rendre compte des spécificités de cedomaine.Rappelons que <strong>le</strong> domaine géographique est une représentation du QUOI géographique. Les spécificités duQUOI géographique ont été montrées lors de la définition de la problématique, 1.1.1, et lors de l' état de l’art sur<strong>le</strong>s formalisations, 2.2.3 et 2.2.2. Nous avons vu que <strong>le</strong>s données géographiques ne sont pas une copie de laréalité, mais la trace des diverses activités de représentations –au sens large-. En particulier, el<strong>le</strong>s se distinguentde la réalité par divers choix rarement explicités dans la BDG. Ces choix peuvent être liés au contexte de lareprésentation : situation dans l’espace, capacité d’observation et activité du sujet construisant la représentation.D’autres choix décou<strong>le</strong>nt de la difficulté de formaliser l’espace géographique : définir des limites d’objets dansun espace continu, discrétiser des formes géométriques pour pouvoir <strong>le</strong>s numériser. Enfin, il existe desinteractions comp<strong>le</strong>xes, et implicites, entre <strong>le</strong>s diverses activités d’appréhension et représentation de l’espacegéographique, Figure 37. Ces interactions impliquent la propagation d’un choix d’une représentation dans uneautre.Il est essentiel que <strong>le</strong> domaine de notre modè<strong>le</strong> de tâches géographiques respecte la diversité des représentationset explicite ce qui permet de comprendre une représentation. Cela implique :- De décrire <strong>le</strong> contexte d’une représentation, <strong>le</strong>s facteurs permettant de comprendre <strong>le</strong>s choix de cettereprésentation,131


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!- De fournir la possibilité de retrouver <strong>le</strong>s liens éventuels entre diverses représentations, généra<strong>le</strong>ment <strong>le</strong>straces de dépendances entre <strong>le</strong>s activités de représentation.Répondre à ces exigences est un domaine de recherche comp<strong>le</strong>xe et dépasse <strong>le</strong> cadre de notre travail. Nous nouslimitons à éviter d’al<strong>le</strong>r à l’encontre de ces deux principes sur <strong>le</strong>s cas que nous avons étudiés.Nous introduisons dans cette section <strong>le</strong>s premières spécifications d’éléments, appartenant au domaine de notremodè<strong>le</strong> des raisonnements géographiques, et illustrant <strong>le</strong>s principes énoncés ci-dessus.3.2.1.1 Rendre compte du contexte de l'utilisateurUne première spécificité du Quoi géographique est la diversité des représentations que se construisent desutilisateurs à propos de l’espace géographique. Ces représentations sont généra<strong>le</strong>ment différentes de cel<strong>le</strong>sutilisées dans <strong>le</strong>s BDG. Nous pensons qu' il est pertinent de décrire certains éléments du contexte du sujetconstruisant la représentation, la situation de l' homme dans l' espace géographique, pour rendre compte despécificités de la représentation construite.Nous adoptons une représentation « mécanique » pour représenter l’homme dans l’espace géographique. En effet<strong>le</strong>s principes de la mécanique ont pour objectif de décrire l’espace en <strong>le</strong> fragmentant en systèmes et de décrire <strong>le</strong>sinteractions de ces systèmes entre eux. Cela semb<strong>le</strong> adapté à notre contexte. De plus ces principes sont presqueaussi largement adoptés que <strong>le</strong>s modè<strong>le</strong>s mathématiques.Les éléments de notre modè<strong>le</strong>, décrit Figure 57, sont <strong>le</strong>s suivants.L’utilisateur est une entité particulière. Une entité a un comportement décrit par des états, et des changementsd’états. L’état peut être absolu, par exemp<strong>le</strong> un véhicu<strong>le</strong> dont <strong>le</strong> moteur est cassé, une rivière asséchée. Il peutaussi être relatif comme la localisation dans l’espace ou une relation avec une autre entité.On définit une activité, comme voyager, vivre ou faire ses courses, par un ensemb<strong>le</strong> de comportementscomposant cette activité. Une activité est associée à une échel<strong>le</strong> pertinente pour analyser cette activité.Une activité est soumise à des contraintes, pesant sur <strong>le</strong>s comportements (états ou changements d’état)composant cette activité. Parmi ces contraintes, certaines sont des lois universel<strong>le</strong>s et d' autres sont desconventions. Une loi universel<strong>le</strong> est par exemp<strong>le</strong> qu’un corps se déplace de façon continue dans l’espace enfonction du temps, qu' une voiture se déplace sur <strong>le</strong> réseau routier, qu' un bateau se déplace sur l' eau. Desexemp<strong>le</strong>s de lois conventionnel<strong>le</strong>s sont <strong>le</strong>s restrictions de circulation.Ces éléments permettent de représenter des connaissances sur des comportements et des activités typiquesd' entités typiques, comme <strong>le</strong> déplacement d’une personne ou d’un véhicu<strong>le</strong>, la répartition de végétaux ou deminéraux dans l’espace.132


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!QUOIActivitéa pour échel<strong>le</strong> d’analyse >1..n1..nEchel<strong>le</strong>1..n1..nComposée devEntité1a >0..nComportement0..nContrainte< soumis à0..n Pèse sur >0..n Pèse sur >0..n1..n1EtatsassociésvEtat1..n111< de< à1..n0..10..1Changementd’étatsassociésv1..nChangementd’état1..n1..ndate >Contrainteuniversel<strong>le</strong>Contrainteconventionnel<strong>le</strong>date >11DateEtat absoluEtat relatifFigure 57 : Eléments du domaine géographique introduits pour expliciter ce qui influe <strong>le</strong>s représentationsconstruites par l’homme de l’espace géographique qui l’entoure. [Figure 57 : E<strong>le</strong>ments of the geographicdomain specified to represent factors interfering the process of a man representing the geographic space aroundhim.]Ces connaissances permettent au système de replacer un besoin d’utilisateur dans son contextegrâce aux connaissances qu’il possède à propos de l’activité conduisant l' utilisateur à exploiter <strong>le</strong>sdonnées géographiques. Il peut dès lors savoir quel<strong>le</strong> information géographique doit posséderl’utilisateur en considérant <strong>le</strong>s contraintes pesant sur cette activité et <strong>le</strong>s objets nécessaires pourvérifier ces contraintes et <strong>le</strong>s optimiser.C’est typiquement <strong>le</strong> cas d’une aide à la navigation. Si nous naviguions sans contrainte géographique, c’est-àdiresi nous pouvions nous « télétransporter », nous n’aurions pas besoin de carte pour déterminer nos itinéraires.Le système peut aussi posséder <strong>le</strong>s connaissances permettant de déterminer l’échel<strong>le</strong> pertinente d’analyse dubesoin de l’utilisateur.3.2.1.2 Intégrer <strong>le</strong>s deux grandes catégories de représentations del’espace géographiqueIl y a deux grandes représentations de l’espace, que ce soit chez <strong>le</strong>s utilisateurs ou dans <strong>le</strong>s BDG. Il est importantde ne pas arbitrer entre ces représentations. Il est possib<strong>le</strong> que, dans <strong>le</strong> contexte d' un besoin spécifique, <strong>le</strong>contenu en information recherché par l' utilisateur ne soit pas disponib<strong>le</strong> dans son type de représentation mais soitdisponib<strong>le</strong> dans l' autre type.133


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!La représentation par objets renvoie à l’observation d’entités. El<strong>le</strong> mène à la construction de BDG vecteur.La représentation par champs renvoie à l’observation de portions d’espace. Un champ est une fonction dont lavariab<strong>le</strong> est un type de portion élémentaire d’espace. Cette représentation mène à la construction de BDGmaillées.Pour ne pas privilégier une représentation sur l' autre, c' est-à-dire une observation sur l' autre, lorsque nousdétaillons des éléments attachés à la notion d' entité, nous cherchons si ces éléments sont éga<strong>le</strong>ment attachab<strong>le</strong>s àla notion de lieu. Les notions précédentes d’activité et de comportement, Figure 57, s’étendent par exemp<strong>le</strong> aussiau cas du lieu comme représenté Figure 58. Un exemp<strong>le</strong> de loi universel<strong>le</strong> observée par l' état d' un lieu est quedeux objets matériels ne sont pas au même endroit en même temps. Notons que cette loi est vraie dans <strong>le</strong> monderéel, c' est-à-dire <strong>le</strong> monde dans <strong>le</strong>quel l' utilisateur effectue son activité, mais el<strong>le</strong> n’est pas vraie dans <strong>le</strong> mondedes BDG. En effet, lorsqu’une base est référencée dans un système de dimension 2, <strong>le</strong>s objets étant à la vertica<strong>le</strong>l’un de l’autre dans <strong>le</strong> monde réel occupent ensemb<strong>le</strong> un même lieu dans la BDG, comme une portion de pont etune portion de rivière.QUOILieua >0..1 1..nComportementFigure 58 : Un lieu a un comportement soumis à des contraintes, de même qu'une entité. [Figure 58 : A place isassociated to a behaviour.]Par ail<strong>le</strong>urs, il est important d' expliciter <strong>le</strong>s liens entre <strong>le</strong> lieu et l' entité. Le principal lien est la notion de situationdans l' espace. Rappelons qu' el<strong>le</strong> est au cœur des raisonnements géographiques et que c' est une notion trèscomp<strong>le</strong>xe à représenter, 1.1.1.2. Nous proposons une représentation de la situation dans l' espace lorsque nousanalysons la tâche de localisation dans la section 3.2.4.1.Nous reprenons par ail<strong>le</strong>urs <strong>le</strong>s grandes lignes du modè<strong>le</strong> de [Laurini et Gordillo 00] pour corré<strong>le</strong>r <strong>le</strong>sreprésentations informatiques par objets et cel<strong>le</strong>s par champ. Par soucis de généricité, nous introduisons unnouvel élément : la grandeur géographique, qui caractérise un objet et peut avoir pour va<strong>le</strong>ur un champ continuou des va<strong>le</strong>urs de ce champ. Par exemp<strong>le</strong>, un objet vil<strong>le</strong> peut être caractérisé par sa température dont <strong>le</strong>s va<strong>le</strong>urssont des mesures de ce champ effectuées à des points contenus dans la vil<strong>le</strong>. Un objet f<strong>le</strong>uve peut être caractérisépar son débit, champ continu qui a pour domaine l’espace occupé par <strong>le</strong> f<strong>le</strong>uve.134


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!QUOIObjet1..nreprésentéparvva<strong>le</strong>ur globa<strong>le</strong>vChamp continu11..ndomaine >1..nLieuChamp continu représenté+méthode d' interpolation110..n0..nGrandeurgéographique1..n1..ncaractérisé parvreprésentation >1 1..n11..nacquisition >1< est inclus dans< est inclus dans1..nPoint stockéPointd’acquisition1..nrésultat demesure >1 1..nva<strong>le</strong>urponctuel<strong>le</strong>v0..nVa<strong>le</strong>urFigure 59 : Eléments de structuration du domaine géographique visant à relier une représentation par champ àune représentation par objets. [Figure 59 : E<strong>le</strong>ments of geographic domain aiming at linking a fieldrepresentation and an object representation.]L’introduction de ces éléments dans notre modè<strong>le</strong> a pour objectif de permettre à un utilisateur, raisonnant sur unmodè<strong>le</strong> représentant l’espace géographique par champs, de savoir quel<strong>le</strong> données géographiques structurées enobjets –données vecteur- peuvent lui apporter des informations uti<strong>le</strong>s. Et vice versa. Pour cela, <strong>le</strong> système peuts’appuyer sur une base de connaissances comportant <strong>le</strong>s principa<strong>le</strong>s grandeurs géographiques et <strong>le</strong>s objets créésen discrétisant <strong>le</strong>s va<strong>le</strong>urs de cette grandeur. Par exemp<strong>le</strong>, la grandeur occupation du sol est associée aux objetsforêt, zone urbaine.3.2.1.3 Décrire <strong>le</strong>s lots de données disponib<strong>le</strong>sEnfin, <strong>le</strong> domaine doit représenter <strong>le</strong>s jeux de données en s’appuyant sur des descriptions disponib<strong>le</strong>s et non enproposant une nouvel<strong>le</strong> description. En d’autres termes, il doit comporter des métadonnées classiques.Notons qu’il est important que la notion de métadonnée ne soit pas une catégorie d’élément mais plutôt unerelation entre un élément et un autre élément pour <strong>le</strong>quel il est métadonnée, Figure 60. Par exemp<strong>le</strong>, dans <strong>le</strong>projet européen LaC<strong>le</strong>f, la base administrative pan-européenne Seam<strong>le</strong>ss Administrative Boundaries for Europe,SABE, est utilisée comme métadonnée d’information de référence spatia<strong>le</strong> d' autres bases de donnéesgéographiques [LaC<strong>le</strong>f 01].Nous avions souligné, section 1.1.3.1, que <strong>le</strong>s métadonnées portaient trop souvent sur un regroupement dedonnées –une base ou un jeu transféré- et non sur des portions qui peuvent être acquises à l’intérieur de ceregroupement. Pour qu’el<strong>le</strong>s remplissent un rô<strong>le</strong> de poignées pour al<strong>le</strong>r chercher des lots de données à l’intérieurd’un regroupement, nous associons à la relation « métadonnée de » une structure d’inférences spécifique. Cettestructure d’inférences a pour entrée globa<strong>le</strong> une relation de métadonnée comme « <strong>le</strong> schéma S est métadonnée du135


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!jeu de données J ». El<strong>le</strong> restreint cette relation en : « <strong>le</strong> schéma S’ est métadonnée du jeu de données J’ », où S’est un sous-schéma de S.La relation « restreint » peut exister entre un sous-schéma et un schéma, entre une couverture et une autrecouverture dans laquel<strong>le</strong> la première est incluse.- Si <strong>le</strong> champ est “schéma”, obtenir un sous-schéma- Si <strong>le</strong> champ est “emprise”, obtenir une emprise incluse-…Lien àrestreindreObtenirspécificationVa<strong>le</strong>urspécifiéeDéterminationdu sous-jeuLienrestreintCOMMENTQUOIE : Elémentdu domaineE’ : Elémentdu domaine10..n^va<strong>le</strong>urM : MétadonnéeChamp : c10..n^va<strong>le</strong>urM’ : MétadonnéeChamp : c1..n1..ndonnéesvJ : Jeu de données1< Est extrait de1..n1..n1..ndonnéesvJ’ : Jeu de donnéesFigure 60 : Association d’inférences aux métadonnées, permettant d’exploiter <strong>le</strong>s métadonnées poursé<strong>le</strong>ctionner des lots de données à l’intérieur d’un jeu. [Figure 60 : Inferences linked to metadata, allowing touse metadata to se<strong>le</strong>ct data inside a data set.]3.2.2 Méthode d’analyse de tâches géographiquesAprès avoir spécifié <strong>le</strong> domaine dans la section précédente, nous cherchons dans cette section à formaliser desraisonnements fondamenta<strong>le</strong>ment géographiques à l’aide des notions de tâches, méthode, rô<strong>le</strong>, domaine.Méthode d’analyse d’une tâcheL’analyse est composée d' une analyse intentionnel<strong>le</strong> de la tâche, c’est-à-dire axée sur l’explicitation d’unobjectif, et d' une analyse fonctionnel<strong>le</strong>, c’est-à-dire axée sur l’explicitation d’une méthode de résolution.136


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Dans l'analyse intentionnel<strong>le</strong>, nous nous concentrons sur l’analyse du vocabulaire de la tâche et sur la distinctionde :- ce qui décrit <strong>le</strong> résultat attendu (la sortie) et ce qui décrit un résultat obtenu (la sortie d'un plan détaillépossib<strong>le</strong>),- ce qui est un terme de contrô<strong>le</strong> important pour spécifier la méthode choisie (<strong>le</strong>s entrées).Les entrées et sorties d’une tâche renvoient aux éléments qui varient en fonction des contextes possib<strong>le</strong>s deréalisation de la tâche et qui sont pertinents dans la description de la tâche; la va<strong>le</strong>ur de ces éléments à desconséquences sur <strong>le</strong> plan détaillé proposé à l'utilisateur.Outre cette distinction, un choix important consiste à savoir, pour chaque terme, s’il renvoie à un rô<strong>le</strong> ou à unélément du domaine. La limite entre <strong>le</strong>s deux n’est pas franche. C’est sur el<strong>le</strong> que repose pourtant d’une part ladistinction entre <strong>le</strong> QUOI et <strong>le</strong> COMMENT, et d’autre part <strong>le</strong> lien entre ces deux catégories de connaissances. Ladescription courante d’une application ne respecte pas toujours cette limite. Nous décrivons parfois tropspécifiquement une application et <strong>le</strong> contenu effectivement manipulé par cette application, c’est-à-dire des objetsparticuliers du domaine. Une difficulté de la modélisation consiste donc à identifier et nommer des termes quisont spécifiques à la résolution des applications étudiées.Pour chaque rô<strong>le</strong> ainsi défini, il faut ensuite déterminer ses va<strong>le</strong>urs possib<strong>le</strong>s c’est-à-dire <strong>le</strong>s éléments dudomaine désignés par ce rô<strong>le</strong>. En particulier, il est important de distinguer <strong>le</strong>s va<strong>le</strong>urs dans <strong>le</strong> QUOI des hommesdes va<strong>le</strong>urs dans <strong>le</strong> QUOI des systèmes.Dans l'analyse fonctionnel<strong>le</strong>, nous concentrons sur l’analyse des étapes de la détermination et des tâchesprimitives correspondant à la décomposition tota<strong>le</strong> de la tâche. Il est alors particulièrement important d’identifier<strong>le</strong>s entrées et sorties des tâches primitives.Lors de la modélisation d'une tâche, et plus particulièrement des connaissances de spécification de cette tâche, i<strong>le</strong>st extrêmement important de savoir si ces connaissances de spécification se rattachent à la tâche principa<strong>le</strong> ou àune tâche figurant dans <strong>le</strong> plan. Cette distinction est très importante pour la f<strong>le</strong>xibilité de la base de connaissanceet plus exactement :- la réutilisation de tâches pour décrire <strong>le</strong> plan de nouvel<strong>le</strong>s tâches, cela demande qu'une tâche décrite puisses'adapter à une variété de contextes d'invocation.- la modification de la méthode d'une tâche qui figure dans plusieurs plans, sans pour autant modifier cesplans dans <strong>le</strong>squels el<strong>le</strong> figure.3.2.3 La tâche d’appariementNous analysons dans un premier temps la tâche d’appariement. C’est une tâche pour laquel<strong>le</strong> nous possédons desconnaissances des diverses catégories de notre modè<strong>le</strong>. L’analyse de cette tâche est essentiel<strong>le</strong>mentfonctionnel<strong>le</strong>.Nous utilisons dans cette section notre langage de description de tâches pour décrire la tâched'appariement. Cette description n'est pas destinée à permettre la réalisation effective d'une tâched'appariement, par exemp<strong>le</strong> à automatiser cette tâche. El<strong>le</strong> doit être exploitée pour permettred'intégrer <strong>le</strong>s méthodes et outils de l'appariement dans <strong>le</strong>s plans détaillés proposés aux utilisateurs,lorsque ces connaissances de dérivation sont uti<strong>le</strong>s pour répondre à <strong>le</strong>ur besoin.137


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.2.3.1 Vocabulaire généralL’appariement consiste à établir des correspondances entre <strong>le</strong>s données de deux jeux de données. Unecorrespondance entre données signifie qu’el<strong>le</strong>s représentent <strong>le</strong> même phénomène du monde réel, comme unbâtiment, un nœud routier. Le processus d’appariement a été exploité et perfectionné dans de nombreux travauxdu laboratoire COGIT. [Lemarié 96] propose un état de l’art des mécanismes connus d’appariement géométriquede données. [Badard 00] améliore <strong>le</strong> processus général d’appariement de deux jeux de données et l’utilise dans <strong>le</strong>contexte de la mise à jour. Ce processus a ensuite été intégré dans un projet de développement mené à l’IGN,Carto2001 [Lemarié and Badard 01]. Par ail<strong>le</strong>urs, [Bel Hadj Ali 01] étudie l’appariement d’objets surfaciques,dans un contexte de contrô<strong>le</strong> qualité.Pour analyser cette tâche nous n’avons pas repris <strong>le</strong>s descriptions de processus de ces travaux pour <strong>le</strong>s traduiredans notre formalisme. Nous avons préféré expliciter la connaissance d’un expert en nous appuyant sur <strong>le</strong>modè<strong>le</strong> générique des tâches géographiques, en l’occurrence nous avons travaillé avec Céci<strong>le</strong> Lemarié.ContextesAvant d’analyser la tâche d’appariement nous rappelons dans quel contexte el<strong>le</strong> prend place. Cette tâche n’estpas une fin en soi, el<strong>le</strong> est toujours invoquée dans <strong>le</strong> contexte d’une autre tâche.C’est une sous-tâche de la tâche de comparaison d’un jeu de données à un autre jeu. L’appariement prend placeau début de la tâche de comparaison pour définir ce qui peut être comparé à quoi. A l’issue de cette étape, lacomparaison des jeux se fait en comparant, correspondance par correspondance, la représentation d’unphénomène d’un jeu à l’autre.La comparaison prend el<strong>le</strong>-même place dans divers contextes. Il peut s’agir de comparer deux jeux, portant surune même réalité mais issus de bases différentes, pour contrô<strong>le</strong>r la qualité d’une base à l’aide d’une baseconsidérée comme de meil<strong>le</strong>ure qualité, comme dans <strong>le</strong>s travaux de [Bel Hadj Ali 01]. Il peut aussi s’agir decomparer deux jeux portant sur une même réalité et issus de différentes version d’une même base pour détecterdes évolutions de la réalité représentée dans la base, comme dans <strong>le</strong>s travaux de [Badard 00].L’appariement est aussi une sous-tâche de la tâche de correction d’un jeu de données J à partir de la descriptiondes corrections d’un jeu de données référence JR. C’est dans ce contexte que l’appariement est étudié dans <strong>le</strong>stravaux de [Badard 00] et intégré dans un projet de développement [Lemarié and Badard 01]. Cette tâche estappelée intégration des corrections décrites sur un jeu dans un autre jeu. La description des corrections estappelée “différentiel”, ou encore journal des corrections entre <strong>le</strong> jeu de référence non corrigé et <strong>le</strong> jeu deréférence corrigé. El<strong>le</strong> associe à des données du jeu de référence représentant un phénomène l' évolution de lareprésentation du phénomène dans la base : cela peut être une destruction, un déplacement, une modificationd' attribut.L’intégration des corrections dans <strong>le</strong> jeu J nécessite une première étape d’appariement entre <strong>le</strong> jeu de référencenon corrigé et <strong>le</strong> jeu J. La description du différentiel, associée aux liens de correspondance, sert de clé d’accèsaux données du jeu J devant être corrigées et <strong>le</strong>ur associe <strong>le</strong>s corrections qu’el<strong>le</strong>s doivent subir.Nous détaillons Figure 61 <strong>le</strong> cas de la mise à jour d’une base de données à l’aide d’une autre qui utilise toutesces tâches.138


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Résultats attendu et obtenuCette première description généra<strong>le</strong> de la tâche d’appariement introduit un vocabulaire spécifique. Nousreprenons ce vocabulaire en l’associant à ses va<strong>le</strong>urs dans <strong>le</strong> domaine géographique : la Figure 62 décrit <strong>le</strong>s rô<strong>le</strong>sainsi définis.Cette tâche n’est pas symétrique et nous parlons d’appariement d’un jeu de référence et d’un jeu comparé.La sortie est un ensemb<strong>le</strong> de correspondances entre <strong>le</strong>s données de chaque jeu. Le plan détaillé décrit commentproduire de tel<strong>le</strong>s correspondances. Une correspondance de données se présente comme une association entre desobjets du premier jeu et des objets du deuxième jeu. Cette association n’est pas symétrique puisqu’el<strong>le</strong> est <strong>le</strong>résultat d’un mécanisme non symétrique. Nous désignons par « amont » de la correspondance <strong>le</strong>s données du jeude référence et par « aval » <strong>le</strong>s données du jeu comparé. L’attribut cardinalité de la correspondance se présentecomme un coup<strong>le</strong> (i,j) où i désigne <strong>le</strong> nombre d’objets du jeu référence participant à la correspondance et j <strong>le</strong>nombre d’objets du jeu comparé. Une correspondance de cardinalité (1,0) désigne un objet du jeu de référencequi n’a pas de correspondant dans <strong>le</strong> jeu comparé. Nous utilisons <strong>le</strong> terme correspondance banca<strong>le</strong> pour désignerune correspondance où i ou j vaut 0. Un objet participant à une correspondance non banca<strong>le</strong> est dit apparié.Notons aussi qu’une correspondance peut être établie entre n objets du jeu de référence et m objets du jeucomparé.Méthode généra<strong>le</strong>La méthode généra<strong>le</strong> de la tâche d’appariement repose sur la notion de variation de données. Il s’agit de l’écartentre <strong>le</strong>s représentations. L’idée généra<strong>le</strong> est que si deux ensemb<strong>le</strong>s de données représentent un mêmephénomène du monde réel alors la tail<strong>le</strong> de cet objet dans une représentation doit être proche de la tail<strong>le</strong> dumême objet dans l’autre représentation, de même que sa position par exemp<strong>le</strong>. Une variation est quantifiée ens’appuyant sur des caractéristiques du phénomène dont <strong>le</strong>s représentations dans l’un et l’autre jeu peuvent êtremesurées et comparées. De tel<strong>le</strong>s caractéristiques sont généra<strong>le</strong>ment la forme, la position, la descriptionsémantique.L’appariement s’appuie sur une analyse de variations entre <strong>le</strong>s représentations pour établir <strong>le</strong>s correspondancesaux “points” où ces variations sont minimes. La notion de “points” renvoie ici aux objets : une correspondanceest établie entre un ou plusieurs objets d’une représentation et un ou plusieurs objets d’une autre représentation.La notion de “minimisation” est comp<strong>le</strong>xe. Il n’est pas simp<strong>le</strong> de comparer <strong>le</strong>s variations entre el<strong>le</strong>s poursé<strong>le</strong>ctionner <strong>le</strong>s plus faib<strong>le</strong>s : écarts entre <strong>le</strong>s définitions de catégories et de relations entre catégories, écarts entre<strong>le</strong>s représentations de géométrie, écarts entre <strong>le</strong>s localisation, etc.Le corps de la méthode d’appariement consiste en l’exploration de l’ensemb<strong>le</strong> des correspondances candidates(i.e. paire de lot d’objets du jeu de référence et lot d’objets du jeu comparé) combinée à l’évaluation desvariations de ces correspondances. Globa<strong>le</strong>ment, cette méthode produit puis restreint des sous-ensemb<strong>le</strong>s decorrespondances candidates qui minimisent <strong>le</strong>s variations de caractéristiques particulières : cel<strong>le</strong>s qui permettent<strong>le</strong> mieux de discriminer des objets d’une représentation entre eux et cel<strong>le</strong>s qui sont censées varier <strong>le</strong> moins d’unereprésentation à l’autre.139


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!TC Mettre à jour un jeu de la base BD2à l’aide d’un jeu de la base BD1sortie : jeu de la BD2 à jourMéthode : TC1 puis TC2TC1 Détecter <strong>le</strong>s évolutions entre <strong>le</strong>s deuxversions de BD1Sortie : Evolutions dans BD1Méthode : TC1-1 puis TC1-2 puis TC1-3 (<strong>le</strong>ssortie secondaire de TC1-1 ne sont pasrecalculées dans TC1-3) puis TC1-4TC2 Mettre à jour BD2Sortie : jeu de la BD2 à jourMéthode : TC2-1 puis TC2-2puis TC2-3TC1-1 Apparier <strong>le</strong>s deuxversions de BD1Sortie : correspondancesentre des objets du jeu deréférence et des objets dujeu comparéSortie secondaire : Objets dujeu de référence necorrespondant à aucunobjets du jeu comparéTC1-2 Appariement retourSortie : correspondances entre desobjets du jeu comparé et des objetsdu jeu de référenceSortie secondaire : Objets du jeucomparé ne correspondant à aucunobjets du jeu de référenceTC1-4 Décrire <strong>le</strong>sévolutionsSortie : Evolutions de lareprésentation dephénomènes (modification,création, destruction…d'objets)TC1-3 Calcu<strong>le</strong>r <strong>le</strong>s variationsentre <strong>le</strong>s deux versionsSortie : Pour chaquecorrespondance, la variationentre <strong>le</strong>s représentations (dans<strong>le</strong> jeu référence et dans <strong>le</strong> jeucomparé) de caractéristiquesdu phénomène sous-jacent (ex:tail<strong>le</strong>, localisation, …)TC2-1 Apparierla version nonmise à jour deBD1 et BD2Intégrer <strong>le</strong>sévolutions deBD1 dans BD2Propager <strong>le</strong>smises à jourde BD2Méthode : Pour chaqueobjet détruit ou modifiéentre BD1 et BD1’,sé<strong>le</strong>ctionner <strong>le</strong>s donnéesreprésentant cet objet dansBD2 et <strong>le</strong>s corriger enfonction de l’évolutionPour chaque objet créé,créer cet objet dans BD2Figure 61 : Structure généra<strong>le</strong> d’une tâche de haut niveau, « mettre à jour une base à l’aide d’une autre », quis’appuie sur des appariements (<strong>le</strong>s tâches en gras). [Figure 61 : General structure of a high <strong>le</strong>vel task, « toupdate a DB with the help of another », which relies on data-matching (bold tit<strong>le</strong>d tasks).]140


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!COMMENTApparierun jeu de donnéesà un jeu référenceRéférenceComparéCorrespondancede donnéesVariation dedonnéesQUOICorrespondanceVariation mesuréeJeu de données1 < dans 0..n0..n+degré de certitude+cardinalité : (1,1), …1..n1..n1résultatrésultatextrait de0..n 0..nde référencecomparévaval amontvvv v1 111..n 1..nVersion de BDG < extrait de1 0..n Va<strong>le</strong>ur mesuréeObjet< effectuée1..nsur+degré de certitude1..n1version devBDG0..nmesure utiliséev1 1..n 1..nMesureélémentmesuré>CaractéristiqueFigure 62 : Principaux rô<strong>le</strong>s de la tâche d’appariement, et <strong>le</strong>urs va<strong>le</strong>urs. [Figure 62 : Main ro<strong>le</strong>s in the datamatchingtask, and their values.]3.2.3.2 Détail de la méthodeNous détaillons maintenant la méthode utilisée pour apparier deux jeux de données, Figure 64. Nous nouscontentons de détail<strong>le</strong>r l’établissement de correspondances, de type (1,n), entre un jeu de référence et un jeucomparé. C’est-à-dire des correspondances où l’amont appartient au jeu de référence et l’aval appartient au jeucomparé. Cet appariement est suivi d’un « appariement retour » qui analyse <strong>le</strong>s correspondances pour produire<strong>le</strong>s correspondances où l’amont appartient au jeu comparé et l’aval appartient au jeu comparé.Apparier <strong>le</strong>s schémasUne première étape consiste à apparier, “à la main”, <strong>le</strong>s schémas. Les rô<strong>le</strong>s importants à l’issue de cetappariement sont :- Les correspondances de classes.- Les attributs discriminants invariants: Il s’agit des attributs qui existent dans chaque représentation –ils sontmis en correspondance-, tels qu’au sein de chaque représentation ils prennent des va<strong>le</strong>urs différentes pourdes objets différents –ils sont discriminants dans chaque représentation-, et tels que <strong>le</strong>ur va<strong>le</strong>ur est la même141


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!d’une représentation à l’autre –ils sont invariants-. Cela peut être par exemp<strong>le</strong> l’attribut “nom de route” entredeux bases respectant la même nomenclature.- Les relations invariantes : Il s’agit des relations qui existent dans chaque représentation –el<strong>le</strong>s sont mises encorrespondance-, et tel<strong>le</strong>s que <strong>le</strong>s instances de ces relations existent indépendamment de la représentationchoisie. Autrement dit, l’appariement devient un morphisme entre <strong>le</strong>s jeux de données munis de cesrelations. Si des objets du jeu de référence sont liés par cette relation –ou plus précisément cette relationtel<strong>le</strong> qu’el<strong>le</strong> est représentée dans <strong>le</strong> jeu de référence- et qu’ils ont des correspondants dans <strong>le</strong> jeu comparé,alors ces derniers objets sont éga<strong>le</strong>ment liés par cette relation –ou plus précisément cette relation tel<strong>le</strong>qu’el<strong>le</strong> est représentée dans <strong>le</strong> jeu comparé-. De tel<strong>le</strong>s relations peuvent exister au sein d’une même classe,comme la topologie, et ou entre deux classes, comme la composition. Nous <strong>le</strong>s appelons respectivementrelations invariantes intra-classe et relations invariantes inter-classes.Notons que dans cet “appariement à la main” des schémas, la notion de variation n’est pas utilisée de la mêmefaçon qu’el<strong>le</strong> <strong>le</strong> sera dans l’appariement de données. Seu<strong>le</strong>s <strong>le</strong>s variations nul<strong>le</strong>s, i.e. <strong>le</strong>s invariances, sont prisesen compte, <strong>le</strong>s autres ne sont pas étudiées. Ces notions sont décrites Figure 63.COMMENTCorrespondance declassesAttributdiscriminantinvariantRelationinvarianteQUOISchémaSchémaCorrespondance< dans1 1SchémaVariation1< extrait de1..n0..n 0..naval amont1..n v v1..nElémentClasseRelationAttributFigure 63 : Rô<strong>le</strong>s importants associés à la comparaison de schémas. [Figure 63 : Important ro<strong>le</strong>s associated toschemas comparison.]Les connaissances de valuation des rô<strong>le</strong>s qui doivent être stockées dans notre système sont par exemp<strong>le</strong> pourchaque BDG, la liste des attributs discriminants “dans l’absolu”, la liste des éléments invariants “dans l’absolu”.142


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Planifier l’appariement décomposé des jeuxL’appariement de schéma est utilisé pour décomposer l’appariement de données en décomposant <strong>le</strong>s jeux àapparier selon <strong>le</strong>s classes mises en correspondance : des données ne peuvent être mises en correspondance que si<strong>le</strong>s objets structurant ces données appartiennent à des classes mises en correspondance lors de l’appariement desschémas. L' appariement de données est ainsi décomposé en composantes qui correspondent à des restrictionsdans <strong>le</strong>s jeux à apparier.L' appariement de schéma est éga<strong>le</strong>ment utilisé pour planifier l’appariement des composantes. Cette planificationobéit à un souci de fiabiliser et simplifier l’appariement, c’est-à-dire veil<strong>le</strong>r à ce que l’appariement des donnéesproduise des correspondances <strong>le</strong>s plus certaines possib<strong>le</strong>s et éviter d’utiliser des processus coûteux (algorithmesgéométriques comp<strong>le</strong>xes). Les appariements restreints aux composantes ne sont pas indépendants et l’ordre dans<strong>le</strong>quel ils sont effectués influe sur la comp<strong>le</strong>xité du calcul et la fiabilité du résultat. Lorsque des composantes ontété appariées, l’appariement des composantes suivantes peut s’appuyer sur <strong>le</strong>s correspondances établies. Parexemp<strong>le</strong>, si <strong>le</strong>s objets routes ont été appariés, alors l’appariement des tronçons de route s’appuie sur <strong>le</strong>scorrespondances entre routes : un tronçon de route est comparé non pas avec tous <strong>le</strong>s tronçons de route du jeucomparé mais plutôt avec <strong>le</strong>s tronçons entrant dans la décomposition de la route appariée avec la route à laquel<strong>le</strong>lui-même appartient.Cette planification s’appuie sur des relations d’ordre entre appariement de composantes, que nous appelonsrelations d’ordre entre correspondances de classes. Notons que ces relations peuvent parfois être concurrentes.El<strong>le</strong>s sont <strong>le</strong>s suivantes :- Les classes portant un attribut discriminant invariant sont appariées en premier. En effet chacune de cescomposantes s’apparie de façon fiab<strong>le</strong> et simp<strong>le</strong>ment, sans recourir aux résultats des appariement d’autrescomposantes.- Lorsqu’il existe une relation invariante inter-classes, <strong>le</strong>s correspondances produites lors de l’appariementd’une classe sont utilisées pour simplifier l’appariement de l’autre classe et il vaut mieux apparier en prioritécel<strong>le</strong> dont l’appariement nécessite <strong>le</strong> moins d’algorithmes comp<strong>le</strong>xes ou cel<strong>le</strong> dont <strong>le</strong> résultat est <strong>le</strong> plusfiab<strong>le</strong>.- Si une classe participe à un grand nombre de relations invariantes inter-classes il est intéressant de l’apparieravant <strong>le</strong>s autres classes participant à ces relations.Il existe éga<strong>le</strong>ment des règ<strong>le</strong>s pour évaluer la comp<strong>le</strong>xité et la fiabilité de l’appariement d’une composante. Lacomp<strong>le</strong>xité dépend des algorithmes utilisés. Si une classe porte une relation invariante intra-classe alors sonprocessus d’appariement est simplifié en exploitant cette relation, comme nous <strong>le</strong> verrons par la suite.La planification se traduit par la production d’un graphe orienté de correspondances de classes. Ce graphe decorrespondances de classes est proposé à la validation de l’utilisateur. L’utilisateur peut décider de ne pasapparier certaines classes, dès lors que cela n’a pas de conséquence sur l’appariement d’autres classes.Apparier <strong>le</strong>s donnéesLa dernière étape de l’appariement consiste à prendre une à une <strong>le</strong>s correspondances de classes, dans l’ordre deparcours du graphe indiqué, et établir <strong>le</strong>s correspondances de données entre objets appartenant aux classes de lacorrespondance de classes.Pour chaque correspondance, l’appariement de données se fait selon <strong>le</strong>s étapes suivantes :- Sé<strong>le</strong>ction d’un objet parmi <strong>le</strong>s objets de référence. La sé<strong>le</strong>ction se fait en suivant <strong>le</strong>s critères suivants. Lesobjets portant des va<strong>le</strong>urs d’attributs discriminant invariant sont sé<strong>le</strong>ctionnés en premier. Les objetsparticipant à une relation invariante avec un objet précédemment apparié (une relation intra-classe avec un143


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!objet de la même classe ou une relation inter-classes avec un objet d’une autre classe déjà apparié) sontsé<strong>le</strong>ctionnés ensuite. La sé<strong>le</strong>ction se poursuit selon ces critères ou aléatoirement s’ils ne s’appliquent pas.- Sé<strong>le</strong>ction des objets à comparer à cet objet. Rappelons que <strong>le</strong> jeu comparé est déjà restreint à ce stade auxobjets appartenant à la classe appariée à la classe de l’objet de référence. La sé<strong>le</strong>ction se fait alors enrestreignant encore ce jeu comparé quand cela est possib<strong>le</strong>. C’est possib<strong>le</strong> lorsque l’objet sé<strong>le</strong>ctionné est enrelation invariante RAmont avec un objet OAmont apparié avec un objet OAval. Dès lors, <strong>le</strong> jeu à comparerest restreint à l’ensemb<strong>le</strong> des objets du jeu comparé qui sont liés par la relation correspondante RAval avecl’objet Oaval.- Évaluation et minimisation de la variation de données entre l’objet de référence et chaque objet comparésé<strong>le</strong>ctionné. S’il ne reste qu’un objet dans <strong>le</strong> jeu restreint il est mis en correspondance avec l’objetsé<strong>le</strong>ctionné. S’il reste plusieurs objets une dernière étape est mise en œuvre : l’utilisation d’algorithmesgéométriques pour discriminer l’objet dont <strong>le</strong>s caractéristiques de position ou de forme sont <strong>le</strong>s plus prochesde cel<strong>le</strong>s de l’objet sé<strong>le</strong>ctionné.COMMENTT0 : Apparier un jeu de données deréférence et un jeu comparéSortie : : liens de correspondanceentre objets de référence et objetscomparésMéthode : T1 puis T2, puis, pour chaque classe du graphe,restreindre <strong>le</strong> jeu de référence aux objets de cette classe et <strong>le</strong>jeu comparé aux objets des classes mises en correspondanceavec cette classe et aux relations appariées portées par cesobjets, et effectuer T3 sur ces jeux restreints.T1: Apparier <strong>le</strong>sschémasSortie :correspondances etinvariances entreéléments desmodè<strong>le</strong>sT2 : Planifier l’appariementdes jeuxsortie : graphe orienté declassesMéthode : T2-1 puisT2-2 puis T2-3T3 : Apparier <strong>le</strong>s donnéesrésultat attendu : liens decorrespondance entreobjets de référence etobjets comparésMéthode : Répéter T3-1 puis T3-2jusqu’à ce que tous <strong>le</strong>s objets sourcesait été sé<strong>le</strong>ctionnésT2-1 : Evaluer <strong>le</strong>srelations d’ordre entreclasses appariéesT2-2 : Construire <strong>le</strong>plan d’appariementT2-3 : Fairevalider <strong>le</strong> pland’appariementT3-1: Sé<strong>le</strong>ctionnerun objet dans <strong>le</strong>jeu restreint deréférenceT3-2 : Apparierl’objet sé<strong>le</strong>ctionnéet <strong>le</strong> jeu restreintcomparéMéthode : T3-2-1 puis T3-2-2T3-2-1: Restreindre<strong>le</strong> jeu comparéT3-2-2: Appariementgéométrique dedonnéesFigure 64 : Décomposition générique de la tâche d’appariement. [Figure 64 : Generic decomposition of thedata-matching task.]144


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Nous utilisons maintenant notre langage de description de tâches pour décrire la tâche d'appariement.TC T0 (apparier un jeu de données de référence à un jeu comparé)Sortie : liens de correspondanceEntrée : jeu de référence, jeu comparéMéthode : Propag Spécif : Spécification de "sortie" de ApparierSchéma6 Spécification de correspondancesde classes (="sortie" de TC1), Spécification de éléments invariants (="sortiesecondaire" de TC1) ;Spécification de "sortie" de TC2 6 Spécification de graphe (="sortie" de TC2) ;Spécification de "sortie" de ParcoursGraphe 6 Spécification de classe courante deréférence (= "sortie" de ParcoursGraphe) ;Spécification de classe courante de référence 6 Spécification de classes courantescomparées (= "correspondances de classe" de Elt.(classe courante de référence)) ;Spécification de "sortie" de RestreindreJeu/jeu=jeu de référence 6 Spécificationde jeu de référence restreint (="sortie" de RestreindreJeu/jeu=jeu de référence +éléments appariés de référence);Spécification de "sortie" de RestreindreJeu/jeu=jeu comparé 6 Spécification dejeu comparé restreint (="sortie" de RestreindreJeu/jeu=jeu comparé + élémentsappariés comparés );Spécification de "sortie" de TC3 6 Spécification de liens de correspondance(+="sortie" de TC3) , Spécification de éléments appariés de référence (+="sortie"secondaire éléments appariés référence de TC3), Spécification de éléments appariéscomparés (+="sortie secondaire" éléments appariés comparés de TC3);Plan non détaillé : Vocabulaire : correspondances de classes, éléments invariants, graphe de classes,jeu de référence restreint, jeu comparé restreint, classe courante de référence,classes courante comparées, éléments appariés de référence, éléments appariéscomparésET(ApparierSchéma/référence="schéma" de jeu deréférence/comparé="schéma" de jeu comparé ;TC2/référence= schéma du jeu de référence/ correspondances=correspondances de classes/invariances=éléments invariants;ParcoursEtMarqueGraphe/graphe=graphe de classe;TANT QUE(classe courante de référence≠∅)REPETER (ET (RestreindreJeu/jeu=jeu de référence/classes=classe courante de référence;RestreindreJeu/ jeu=jeu comparé/classes=classes courantes comparées;TC3/ référence=jeu de référence restreint/comparé=jeu comparérestreint/correspondances=liens de correspondances;ParcoursEtMarqueGraphe/graphe=graphe de classe;)))La tâche T1 d'appariement de schéma se fait pour l'instant en lisant <strong>le</strong>s spécifications. Lorsqu'on travail<strong>le</strong> sur unnombre limité de BD et de types de jeux, <strong>le</strong> résultat de cette tâche peut être stocké une fois pour toute au lieud'être recalculé pour chaque tâche d'appariement.TC TC2 (Planifier l'appariement de jeux)Sortie : graphe orienté de classesEntrée : référence, correspondances, invariancesMéthode : Plan non détaillé : ET (TP(Evalue critères d'ordre entre classes);TP(Construit relations globa<strong>le</strong>s d'ordre entre classes);145


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!TP(Construire <strong>le</strong> graphe);TP(Faire valider graphe);TANT QUE (utilisateur pas satisfait)REPETER (TP(Faire valider graphe) ; TP(Modifier graphe)) )TC TC3 (Apparier des données)Sortie : liens de correspondance entre objets de référence et objets comparésEntrée : jeu de données de référence, jeu de données comparé, graphe de classesMéthode : Plan non détaillé : Vocabulaire : classe courante, jeu restreint de référence, jeu restreint comparé,élément de référence, éléments à comparerTANT QUE (jeu restreint de référence≠∅)REPETE( ET(ParcoursEtMarqueGraphe/graphe=graphe de classes/ sortie=classe courante;FiltreJeu/jeu=jeu de référence/classe filtre=classe courante/sortie= jeu restreint deréférence;FiltreJeu/jeu= jeu comparé, classes filtre= classes en correspondance avec la classecourante/sortie=jeu restreint comparé;TP(sé<strong>le</strong>ctionne un objet du jeu restreint de référence en fonction des critères desé<strong>le</strong>ction)/sortie=élément de référence;TP(sé<strong>le</strong>ctionne des objets du jeu restreint comparé en fonction descorrespondances déjà établies et des relations invariantes intraclasse)/sortie=élémentsà comparer;liens de correspondance+= "sortie" de TC(Appariement géométrique de l'élémentde référence aux éléments à comparer);))La tâche primitive ParcoursEtMarqueGraphe consiste à parcourir un graphe orienté, à sé<strong>le</strong>ctionner <strong>le</strong> premiernœud non marqué rencontré, et à <strong>le</strong> marquer pour ne pas <strong>le</strong> re-sé<strong>le</strong>ctionner la fois suivante.3.2.3.3 Exploitation du modè<strong>le</strong> de l’appariementNotre modè<strong>le</strong> de tâches a permis de formaliser <strong>le</strong> processus d’appariement. Ce modè<strong>le</strong> n’est pas dédié à un jeude données, grâce à l’utilisation de rô<strong>le</strong>s pour décrire <strong>le</strong>s objets manipulés. Il peut donc être adapté à diverscontextes en spécifiant <strong>le</strong>s va<strong>le</strong>urs de ces rô<strong>le</strong>s.Cette formalisation est intéressante dans un contexte d’aide à l’accès car <strong>le</strong> processusd’appariement est un processus intervenant dans plusieurs contextes d'exploitation de donnéesgéographiques.Un premier type de besoin est celui où l’utilisateur possède deux jeux et doit réaliser un appariement. Un telbesoin surgit par exemp<strong>le</strong> quand un utilisateur possède deux jeux de données portant sur des zonesgéographiques différentes et ayant une zone de recouvrement, et qu’il veut réaliser une jointure de ces jeux. Ilsurgit aussi quand un utilisateur souhaite détecter des évolutions entre deux versions d’une même base. Lemodè<strong>le</strong> permet d’automatiser la construction du graphe de classes d’appariement. Pour cela, il faut stocker unebase de connaissances associant à un type d’objet géométrique la comp<strong>le</strong>xité algorithmique de la mesure decaractéristiques de cet objet. Le système utilise cette base de connaissances pour évaluer la comp<strong>le</strong>xitéalgorithmique a priori de chaque appariement de classe, puis il utilise la liste d’attributs et relations invariantsrelative aux jeux sur <strong>le</strong>squels sont réalisés l’appariement pour modifier ces comp<strong>le</strong>xités et ordonner <strong>le</strong>s classes.146


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Un autre type de besoin est celui où un utilisateur possède un jeu de données et a besoin d’acquérir un autre jeuauquel apparier son propre jeu. Par exemp<strong>le</strong> il peut vouloir évaluer l’actualité ou la qualité de ses données enappariant son jeu à un jeu de référence dont l’actualité et la qualité sont satisfaisantes.Le modè<strong>le</strong> permet de répondre à l' utilisateur si son jeu peut être apparié, avec quel autre jeu, et comment. Lesystème s’appuie sur ses connaissances sur la tâche d’appariement pour guider la sé<strong>le</strong>ction d’un jeu de référenceparmi <strong>le</strong>s BDG connues du système. Pour cela il s’appuie sur la spécification par l’utilisateur des attributsdiscriminants figurant dans son propre jeu et des classes portant de nombreuses relations de composition ou detopologie. Outre désigner un jeu de référence auquel l’utilisateur peut apparier son jeu, <strong>le</strong> système peut aussi luidécrire une méthode généra<strong>le</strong> d’appariement.Un autre besoin auquel répond l’appariement est la réalisation d’une représentation multi-échel<strong>le</strong>s à partir dedeux bases de données, portant sur une même réalité mais à des échel<strong>le</strong>s différentes. Les objets à mettre encorrespondance dépendent des bases initia<strong>le</strong>s et de l’exploitation que l’utilisateur veut faire de la représentationmulti-échel<strong>le</strong>s fina<strong>le</strong>. Ce sont par exemp<strong>le</strong> des nœuds routiers qui peuvent être représentés à une échel<strong>le</strong> par desentités comp<strong>le</strong>xes comportant <strong>le</strong>s bretel<strong>le</strong>s d’accès et <strong>le</strong>s ponts, et à une autre échel<strong>le</strong> par un simp<strong>le</strong> symbo<strong>le</strong>ponctuel positionné à l’intersection des routes.En définitive, pour aider un utilisateur à spécifier précisément son besoin d’apparier des jeux de données, ilfaudrait modéliser <strong>le</strong>s contextes dans <strong>le</strong>squels l’appariement est uti<strong>le</strong> c’est-à-dire des tâches faisant appel àl’appariement dans <strong>le</strong>ur plan non détaillé.3.2.4 La tâche de localisationNous modélisons à présent des tâches demandant une analyse intentionnel<strong>le</strong> poussée, c' est-à-dire qui renvoient àun vocabulaire ambigu et à une variété de besoins effectifs. Cela nous permet de nous concentrer sur la notiond’expression de besoins d’utilisateurs. Les interrogations fondamenta<strong>le</strong>s présentées en section 1.1.2.1 sont : lalocalisation « Où est-ce ? », l’adressage « Qu’est-ce qu’il y a là ? », la détection de proximité « Qu’est-ce qu’ily a proche de ça ? », <strong>le</strong> calcul d’itinéraire. Cette section se concentre sur <strong>le</strong>s deux premières questions et lasection suivante sera consacrée à la troisième question.Nous nous concentrons sur la tâche de localisation car d’un point de vue déclaratif, el<strong>le</strong> est symétrique de latâche d’adressage : <strong>le</strong>s termes de lieu et d’entité y jouent des rô<strong>le</strong>s symétriques.La localisation est une tâche très générique qui renvoie à une variété de contextes. Connaître cescontextes est indispensab<strong>le</strong> pour pouvoir envisager d’aider automatiquement un utilisateur àplanifier sa réponse à une question du type « où est ce ? ». Il est donc important d’analyser enpriorité l’aspect déclaratif qui renvoie à l’expression du besoin de l’utilisateur, avant d’aborder laplanification de la réponse à ce besoin.147


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.2.4.1 L’aspect déclaratifLes principaux rô<strong>le</strong>sLa localisation vise à déterminer <strong>le</strong> lieu tel qu’une entité donnée s’y trouve. La sortie est donc un lieu et uneentrée est l’entité. L’adressage vise à déterminer <strong>le</strong>s entités qui se trouvent à un lieu donné. La sortie est doncdes entités et une entrée est <strong>le</strong> lieu.Un terme au cœur de ces tâches et de <strong>le</strong>ur symétrie est : « se trouve à ». Nous notons ce terme localisationspatia<strong>le</strong> (d’une entité dans un lieu), il correspond à l’expression situation dans l’espace que nous employons pourdécrire <strong>le</strong> domaine de l’information géographique 1.1.1. La localisation spatia<strong>le</strong> est une notion essentiel<strong>le</strong> à toutraisonnement prenant place dans l’espace géographique. C’est un rô<strong>le</strong>. Il existe des relations entre localisationsspatia<strong>le</strong>s comme l’implication ou l’incompatibilité.Nous modélisons la localisation spatia<strong>le</strong> comme un concept, Figure 65, et non comme une relationentre une entité et un lieu.A partir de ce choix, une structure de rô<strong>le</strong>s très simp<strong>le</strong> s’offre à nous pour décrire la notion de localisation Figure65.COMMENTAdressagerésultat attendu : entitéterme de contrô<strong>le</strong> : lieuLocalisationrésultat attendu : lieuterme de contrô<strong>le</strong> : entitéLocalisation Spatia<strong>le</strong>EntitéLieuFigure 65 : Rô<strong>le</strong>s servant de vocabulaire aux tâches d’adressage et de localisation. [Figure 65 : Main ro<strong>le</strong>s forthe task of addressing and locating.]Les va<strong>le</strong>urs du rô<strong>le</strong> « entité »Les va<strong>le</strong>urs du rô<strong>le</strong> « entité » d’une tâche de localisation sont tout ce qui peut faire l’objet d’une tâche delocalisation, c’est-à-dire un phénomène géographique : une vil<strong>le</strong>, une manifestation de maladie, une voiture, unetendance culturel<strong>le</strong>, une personne, un événement historique, etc. Notons que <strong>le</strong> rô<strong>le</strong> entité correspond dans <strong>le</strong>domaine à deux notions Figure 66 : <strong>le</strong>s entités utilisées dans <strong>le</strong>s modè<strong>le</strong>s de raisonnement des hommes (que nousnotons « entité ») et <strong>le</strong>s entités informatisées (que nous notons « entité de représentation »).148


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!COMMENTEntitéQUOIRéférencesémantiqueEntité< Identifiée parReprésentée par >1..n 11 0..nEntité dereprésentation1..n1OntologieDéfinie dansv1..n1SchémaAppartient àvVa<strong>le</strong>urs liées au QUOI des hommesVa<strong>le</strong>urs liées au QUOI des systèmesFigure 66 : Eléments du domaine associés au rô<strong>le</strong> « entité ». [Figure 66 : Domain e<strong>le</strong>ments associated to thero<strong>le</strong> « entité ».]Les entités connues des hommes peuvent être identifiées par une référence sémantique dans une nomenclature(ou ontologie). Ces entités peuvent être représentées dans des systèmes par des entités connues des systèmes.Ces dernières sont appelées objets géographiques ou encore objets sémantiques. Lorsqu’une entité est identifiéepar une référence sémantique dans une nomenclature (par exemp<strong>le</strong> un numéro de département), cette référenceest souvent conservée dans une représentation de cette entité, et stockée comme un attribut pouvant servir de cléd’accès à l’objet.La représentation privilégiée des entités est la représentation vecteur. De fait, cette représentation est associée àl’opération « où est-ce ? » [Ruas 99] p28. El<strong>le</strong> facilite la phase de spécification de l' entrée «entité à localiser ».Au contraire, la spécification d’une entité dans une représentation maillée est plus comp<strong>le</strong>xe. Au mieux el<strong>le</strong>s’exprime par une expression du type : <strong>le</strong>s mail<strong>le</strong>s dont la va<strong>le</strong>ur de l’attribut « occupation du sol » vaut « forêt ».Les va<strong>le</strong>urs du rô<strong>le</strong> « lieu »Une structure classique en information géographique pour la notion de lieu consiste à distinguer un système deréférence spatia<strong>le</strong> et une référence dans ce système. Le lieu est une référence dans un système de référence, parexemp<strong>le</strong> un jeu de coordonnées dans un système de coordonnées. Nous prenons a priori cette structure pourstructurer <strong>le</strong> rô<strong>le</strong> lieu. Notons par ail<strong>le</strong>urs qu’il est possib<strong>le</strong> de construire des lieux agrégés grâce aux expressions: « dans tel lieu ou tel lieu », « dans tel lieu et tel lieu ».Pour ce qui est des lieux appréhendés par l’homme, ils peuvent être des coordonnées GPS, une vil<strong>le</strong>, une régionsur une carte, un concept abstrait (« dans la direction indiquée par mon doigt » etc..). Notons que dans <strong>le</strong> langagecourant, des entités sont souvent utilisées pour désigner un lieu, comme une vil<strong>le</strong>. Nous nous reportons àl’analyse de [Denand 00] pour formaliser ces notions de lieux ; introduite section 2.2.3.2. Il s’appuie sur <strong>le</strong>sstructures de phrases suivantes : « Question : pronom interrogatif + verbe locatif statique + groupe nominalRéponse : préposition locative + groupe nominal ». Par ex : « Où est ta voiture ? - Derrière la maison. »Les va<strong>le</strong>urs du rô<strong>le</strong> « lieu » sont ici <strong>le</strong>s expressions de la forme : « la préposition locative + groupe nominal ». Lapréposition locative renvoie à une relation spatia<strong>le</strong> et <strong>le</strong> groupe nominal à une entité de référence, <strong>le</strong> site. Par149


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!exemp<strong>le</strong> « dans Paris » est un lieu, « Paris » est l’entité de référence, <strong>le</strong> site, et « dans » est une relation spatia<strong>le</strong>servant de référence dans <strong>le</strong> système de référence spatia<strong>le</strong> indirect centré sur Paris.[Denand 00] et [Gonçalves 99] soulignent que la désignation d’un endroit repose sur <strong>le</strong> choix d’un référentiel, etque ce choix dépend de l’entité que l’on cherche à localiser. Il existe ainsi une relation entre entités : une entitéest un site acceptab<strong>le</strong> pour une autre entité si el<strong>le</strong> peut servir de référence pour la localiser.Pour ce qui est des relations spatia<strong>le</strong>s utilisées pour construire une référence par rapport à une entité site, nousretenons <strong>le</strong>s mêmes relations que [Gonçalves 99] : l’orientation (ex : « à gauche de.. »), la distance (ex :« proche de »), la topologie (ex : « inclus dans »). La relation de distance ne renvoie pas toujours à une distancepurement spatia<strong>le</strong>, el<strong>le</strong> peut renvoyer à une distance associée à la navigation d’un agent dans un réseau. Nousdétaillons cette notion de navigation dans la section 3.2.5.Enfin, nous considérons qu' un autre système de référence est <strong>le</strong> système de navigation d' un agent : à la question"où se trouve tel<strong>le</strong> entité" il veut pour réponse l' itinéraire qu' il doit emprunter pour al<strong>le</strong>r jusqu' à l' entité.La Figure 67 propose une synthèse de ces éléments Figure 67.COMMENTLocalisation Spatia<strong>le</strong>LieuEntitéSystème de référencespatia<strong>le</strong>RéférenceQUOI0..nEntité1< est relative à0..nRelation spatia<strong>le</strong>+ préposition locative0..n< est un siteacceptab<strong>le</strong> pourOrientationDistanceTopologieSituation d'un agent1 < point de départ 0..nItinéraireVa<strong>le</strong>urs liées au QUOI des hommesFigure 67 : Structure du rô<strong>le</strong> lieu. Dans <strong>le</strong> QUOI des hommes ces rô<strong>le</strong>s renvoient à l’utilisation d’une entité deréférence, dite « site », et d’une relation spatia<strong>le</strong> vis-à-vis de cette entité de référence. En fonction de l’entité àlocaliser, il existe des entités qui sont des sites acceptab<strong>le</strong>s pour la localiser. [Figure 67 : Structure of the ro<strong>le</strong>« lieu » (place). In the men WHAT, the ro<strong>le</strong>s refer to using a reference entity, the site, and a spatial relationshiptowards it. Depending on the entity to be located, some entity are possib<strong>le</strong> sites to locate it.]Pour ce qui est des lieux représentés dans <strong>le</strong>s données, il existe deux grands types de localisations : lalocalisation directe et la localisation indirecte. La localisation directe correspond à l’attribution de coordonnées150


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!dans un système de référence mathématique et la localisation indirecte correspond à un lien avec un objetgéographique. Ce dernier type de localisation est celui utilisé de façon naturel<strong>le</strong> par l’homme mais éga<strong>le</strong>mentdans des applications SIG, comme dans la communauté du transport [F<strong>le</strong>tcher et al. 98]. Les principaux systèmesde références spatia<strong>le</strong>s indirects sont <strong>le</strong>s systèmes linéaires, et systèmes zonaux. Les systèmes linéaires ont étéintroduits 2.2.2.2. Les systèmes zonaux sont en fait des couches d’entités, généra<strong>le</strong>ment administratives,constituant une partition de l’espace. Chacun de ces systèmes indirects correspond au modè<strong>le</strong> général du lieudans <strong>le</strong> QUOI des hommes en restreignant <strong>le</strong>s relations spatia<strong>le</strong>s. Dans la partition de l’espace la seu<strong>le</strong> relationest la relation topologique d’inclusion. Dans <strong>le</strong> système linéaire <strong>le</strong> lieu est un lieu agrégé composé de : unerelation de situation dans un tronçon et une relation de distance à un nœud du graphe.Nous rendons compte de ces éléments Figure 68.COMMENTLieuSystème de référencespatia<strong>le</strong>RéférenceQUOIS.R.S. direct< est définie dans1 1..nRéférence+ précisionS.R.S. indirectObjet géométriqueS.R.S.I. comp<strong>le</strong>xeS.R.S.I. élémentaire1référence élémentaire >Système zonal1 1..nmet en place >Système linéairecentre deréférenceélémentairev11Entité< est relative à11..n1..nRelation spatia<strong>le</strong>Ex : système de pointskilométriquesOrientationDistanceTopologieFigure 68 : Va<strong>le</strong>urs des rô<strong>le</strong>s composant <strong>le</strong> lieu dans <strong>le</strong> QUOI informatisé. (S.R.S. : système de référencespatia<strong>le</strong>, S.R.S.I. : système de référence spatia<strong>le</strong> indirect ). [Figure 68 : Values of ro<strong>le</strong>s composing a place in thecomputed WHAT. (S.R.S : spatial reference system ; S.R.S.I. : indirect spatial reference system)]Les va<strong>le</strong>urs du rô<strong>le</strong> « localisation spatia<strong>le</strong> »Le rô<strong>le</strong> localisation spatia<strong>le</strong> ne renvoie pas à un élément du monde réel. Il s’agit d’une notion abstraite surlaquel<strong>le</strong> s’appuient tous nos raisonnements géographiques : la notion de situation dans l’espace.151


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Dans <strong>le</strong> langage courant, la notion de localisation spatia<strong>le</strong> ne renvoie pas uniquement à l’association d’un lieuet d’une entité, mais aussi à des notions plus comp<strong>le</strong>xes. L’étude de l’ontologie de sens commun CYC,[Jarrold and Davis 96], dans <strong>le</strong> domaine de l’information géographique, a montré que certaines prépositionslocatives, comme <strong>le</strong> mot anglais « above », ont des acceptions différentes selon <strong>le</strong> contexte dans <strong>le</strong>quel el<strong>le</strong>ssont employées. Dans <strong>le</strong> contexte de <strong>le</strong>cture d’une carte « above » signifie « au Nord de ». Dans <strong>le</strong> contextedu vol d’un avion, « above » signifie « à la vertica<strong>le</strong> de ». Une conséquence de cette remarque est que lanotion de localisation spatia<strong>le</strong> renvoie parfois dans <strong>le</strong> langage courant à : « est cartographié », « vo<strong>le</strong> ». Celaest lié au fait que la notion de localisation prend souvent place dans un raisonnement mené sur cettelocalisation. Une réponse à une tâche de localisation peut par conséquent être :- Un lieu dans l’un ou l’autre des systèmes de référence présentés précédemment.- Une carte quand <strong>le</strong> besoin ne consiste pas à avoir uniquement un lieu associé à l’entité mais plutôtl’ensemb<strong>le</strong> des relations que l’entité entretient avec l’espace géographique. De tel<strong>le</strong>s relations sontappréhendées de façon privilégiée sur une carte.- Une situation sur une trajectoire : l’avion vo<strong>le</strong> au-dessus de tel pays signifie par exemp<strong>le</strong> pourl’utilisateur qu’il est à mi-chemin.Pour représenter cela, nous nous appuyons sur notre spécification du domaine géographique présentée section3.2.1.1 qui associe à un sujet une situation pouvant être un état ou un changement d’état.Dans notre modè<strong>le</strong>, la localisation spatia<strong>le</strong> statique est un état. La localisation spatia<strong>le</strong> dynamiqueest un comportement auquel est associée, comme état, une localisation spatia<strong>le</strong> statique.Par ail<strong>le</strong>urs nous modéliserons au niveau de la tâche de localisation <strong>le</strong> fait que la sortie peut être spécifiéecomme une carte ou une description de navigation.Dans <strong>le</strong>s représentations utilisées dans <strong>le</strong>s bases de données géographiques, ce rô<strong>le</strong> est souvent un liend’attribut entre un objet géographique (l’entité) et un objet géométrique (l’endroit), ou entre une mail<strong>le</strong>(l’endroit) et un attribut sémantique (l’entité).Ces éléments sont repris Figure 69.COMMENTLocalisation Spatia<strong>le</strong>Localisation spatia<strong>le</strong>statique< estassociéeàLocalisation spatia<strong>le</strong>dynamiqueQUOIEtatComportementElément de schémaEx : Se trouve,Est cartographiéVa<strong>le</strong>urs liées au QUOI des hommesEx : Marche, Rou<strong>le</strong>,Vo<strong>le</strong>Ex : Relation entre un objetsémantique et un objetgéométrique, Attribut “type devégétation” d’une mail<strong>le</strong>Va<strong>le</strong>urs liées au QUOI informatiséFigure 69 : Va<strong>le</strong>urs du rô<strong>le</strong> localisation spatia<strong>le</strong>. [Figure 69 : Values of the ro<strong>le</strong> « spatial localisation ».]152


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.2.4.2 L’aspect opérationnelLa tâche de localisation est extrêmement généra<strong>le</strong>. Il n’existe pas dans la littérature de méthode générique delocalisation, qui puisse être spécifiée en fonction des divers contextes dans <strong>le</strong>squels on fait appel à la tâche delocalisation.Nous définissons ici une méthode générique de localisation et <strong>le</strong>s éléments de spécification decette méthode en fonction des contextes de réalisation de cette tâche.Méthode génériqueNous proposons de résumer la tâche de localisation en considérant que cette tâche consiste à produire uneréférence spatia<strong>le</strong> tel<strong>le</strong> que :- cette référence est effectivement associée à l’entité que veut localiser l’utilisateur,- cette référence est définie dans un système pertinent pour <strong>le</strong> besoin de l’utilisateur. En effet, l’utilisateurcherche rarement <strong>le</strong>s coordonnées Lambert d’une entité, mais il peut chercher une relation spatia<strong>le</strong> avec uneautre entité.Cela permet de définir une méthode générique décomposant la tâche de localisation selon deux étapes :- La première étape est de produire une référence spatia<strong>le</strong> effectivement associée à cette entité, obtenue <strong>le</strong>plus simp<strong>le</strong>ment possib<strong>le</strong>, et exploitab<strong>le</strong> par un SIG. Notons que si l’utilisateur possède une référencespatia<strong>le</strong> de l’entité qu’il veut localiser, cette première étape est inuti<strong>le</strong>.- La deuxième étape est de produire une nouvel<strong>le</strong> référence spatia<strong>le</strong>, à partir de cel<strong>le</strong> produite dans la premièreétape, en se plaçant dans un système de référence pertinent pour l’utilisateur. Notons que si la référenceproduite dans la première étape est exploitab<strong>le</strong> par l’utilisateur alors cette deuxième étape est inuti<strong>le</strong>.Nous détaillons ci-dessous ces étapes. Chacune se décompose el<strong>le</strong>-même en deux sous-tâches :- acquérir un système de référence : dans la première étape, il s' agit d' un système dans <strong>le</strong>quel on peut définirsimp<strong>le</strong>ment une référence, et, dans la deuxième étape, il s' agit du système permettant de produire <strong>le</strong> type deréférence spatia<strong>le</strong> voulu par l' utilisateur,- produire une référence spatia<strong>le</strong>.Première étape : produire une référence spatia<strong>le</strong> intermédiaireLorsque l’utilisateur possède déjà une référence spatia<strong>le</strong>, dans un système de référence spatia<strong>le</strong> direct, de l’entitéqu’il veut localiser, comme des coordonnées GPS ou géographiques, la première étape est inuti<strong>le</strong>.Dans d' autres cas, l’utilisateur possède déjà une référence spatia<strong>le</strong> dans un système indirect suffisamment“universel” : système d’adresses posta<strong>le</strong>s, système de référence linéaire comme <strong>le</strong> réseau routier, ferroviaire oude métro, système de partition de l’espace en zones administratives. Dans ces cas, il y a deux possibilités. Sil’étape suivante peut être accomplie en exploitant cette référence indirecte alors il n’y a pas de première étape. Sil’étape suivante a besoin d’une référence spatia<strong>le</strong> dans un système direct alors il faut effectuer un changement desystème de référence. Cela se fait en acquérant une BDG permettant deux modes de positionnement : <strong>le</strong> premierétant celui de l’utilisateur, <strong>le</strong> deuxième étant un système de coordonnées géographiques.Lorsque l' utilisateur ne possède pas de référence spatia<strong>le</strong> connue, il faut exploiter <strong>le</strong>s éléments spécifiant l' entitéqu' il cherche à localiser et traduire ces éléments en une référence spatia<strong>le</strong>.Il est possib<strong>le</strong> que l' entité à localiser soit représentée dans une BDG. Pour obtenir une référence spatia<strong>le</strong> d’unetel<strong>le</strong> entité, il faut :- Acquérir un jeu de données dans <strong>le</strong>quel l’entité est représentée.153


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!- Appliquer des mécanismes pour sé<strong>le</strong>ctionner cette entité : cela peut être simp<strong>le</strong>ment l’expression d’unidentifiant dans une nomenclature commune à l’utilisateur et à la BD. Cela peut être aussi l’expression derelations sémantiques ou spatia<strong>le</strong>s entre cette entité et d’autres entités représentées dans la base.- La référence spatia<strong>le</strong> est alors <strong>le</strong> résultat d' une opération de localisation élémentaire de cette entité (décriteplus loin).Il est possib<strong>le</strong> éga<strong>le</strong>ment que l' entité à localiser ne soit pas représentée dans une BDG mais soit liée à des entitésreprésentées dans des BDG par des relations qui peuvent se traduire en des restrictions sur la référence spatia<strong>le</strong>recherchée. Il faut alors :- Acquérir un jeu de données dans <strong>le</strong>quel <strong>le</strong>s entités en relation avec l’entité de l’utilisateur sont représentées(cela peut nécessiter d' intégrer plusieurs jeux).- Pour chaque relation, il faut sé<strong>le</strong>ctionner <strong>le</strong>s entités concernées dans ce jeu, et effectuer une localisationélémentaire de ces entités.- Pour chaque relation, traduire la relation sémantique en une restriction s' appuyant sur <strong>le</strong>s références spatia<strong>le</strong>sproduites précédemment. Par exemp<strong>le</strong>, si l' entité recherchée est proche d' une route, un buffer autour d' unsegment représentant une référence de cette route produit une zone dans laquel<strong>le</strong> se trouve la référencespatia<strong>le</strong> recherché.Les éléments du contexte permettant de spécifier cette étape de la tâche sont donc :- des éléments de localisation connus,- des caractéristiques de l’entité recherchée, type, relations sémantiques ou spatia<strong>le</strong>s avec d’autres entités,- des restrictions sur la localisation recherchée, comme un rectang<strong>le</strong> englobant.Deuxième étape : produire une référence spatia<strong>le</strong> exploitab<strong>le</strong> par l’utilisateurCette deuxième étape consiste à :- acquérir un système de référence satisfaisant l' utilisateur,- traduire dans ce système la référence spatia<strong>le</strong> produite par l' étape précédente en une référence spatia<strong>le</strong>répondant au besoin de localisation de l' utilisateur, c' est-à-dire effectuer un changement de système deréférence.Il existe une variété de tels sytèmes car il existe une variété de formats de réponse à la tâche de localisation. Unelocalisation recherchée peut être des coordonnées géographiques, ou un positionnement par rapport à un objet deréférence, ou une situation sur une carte, ou un itinéraire depuis un lieu de référence.L’élément du contexte permettant de préciser <strong>le</strong> format de la réponse est ce que l’utilisateur veut faire du résultat.De fait, la tâche de localisation, comme la tâche d’appariement, n’est pas une fin en soi mais prend place dansune tâche de plus haut niveau : un utilisateur a besoin d’une localisation pour mener un raisonnement dessus.Cela peut être un raisonnement mené par l’homme, ou un raisonnement mené par un système informatique.Si <strong>le</strong> résultat doit être exploité par un homme, il est important de choisir un système de référence qui correspondeà la localisation perçue par l’homme. Les formalismes permettant de représenter sur des données géographiques<strong>le</strong>s localisations perçues par l’homme sont étudiés par [Gonçalves 99]. Un tel formalisme de description“convivia<strong>le</strong>” de la localisation impose souvent un changement de représentation des objets composant <strong>le</strong> systèmede référence et éga<strong>le</strong>ment une étape d’abstraction des formes géométriques [Gonçalves 99].Si <strong>le</strong> résultat doit être exploité par un système il est important que son format soit adapté à la manipulation que <strong>le</strong>système en fera.En définitive, pour spécifier cette étape, il faut connaître la tâche que <strong>le</strong> système réalisera avec <strong>le</strong> résultat.Nous traduisons sur un schéma général, Figure 70, la méthode générique de la tâche de localisation décrite cidessus.Cette méthode a été codée dans <strong>le</strong> prototype présenté dans la section 3.3. Nous détaillons dans cettesection certaines tâches primitives utilisées dans cette méthode.154


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!T0 : Localiser une entitésortie : référence spatia<strong>le</strong>entrée: entité à localiserMéthode :- Si on possède une référence spatia<strong>le</strong> de format SIG : T1 telque la sortie est <strong>le</strong> système souhaité par l' utilisateur, puis T2avec pour entrée <strong>le</strong> système issu de T1 et comme élémentconnu de localisation la référence spatia<strong>le</strong> SIG connue.- Si on souhaite une référence spatia<strong>le</strong> de format SIG : T1, puisT2 avec en entrée la sortie de T1.- Si aucune des 2 conditions précédente n' est réalisée : T1, puisT2 avec en entrée la sortie de T1, on obtient une référenceintermédiare, puis T1 tel que la sortie est <strong>le</strong> système souhaitépar l' utilisateur, puis T2 avec pour entrée <strong>le</strong> système issu de T1et comme élément connu de localisation la référenceintermédiaire.T1 : Acquérir un système de référence spatialsortie : jeu de données intégréentrée : éléments de spécification de l’entité à localiser,éléments de localisation connusT2: Produire une référence spatia<strong>le</strong>sortie : référence spatia<strong>le</strong>entrée : éléments de spécification de l’entité àlocaliser, éléments de localisation connus, systèmede référenceMéthode :Si <strong>le</strong> système de référence souhaité est une carte alorsacquérir un jeu représentant des routes, des entitésadminsitartives et des noms de lieuSI <strong>le</strong> système souhaité est un système administrativealors acquérir une Bdadministrative…Si un élément de localisation connu est "est inclus dansLocalisationL" alors la couverture du jeu doit contenirLocalisationLSi l' entité à localiser est de nature NatureN alors <strong>le</strong>schéma du jeu doit représenter des éléments de NatureNSi l' entité à localiser est en relation avec des entités deNatureM alors <strong>le</strong> schéma du jeu doit représenter deséléments de NatureM……..Il peut être nécessaire d’acquérir plusieurs jeux et de <strong>le</strong>sréférencer dans un même SRS grâce à des inférencesde changement de SRSMéthode :Si on possède comme élément de localisation connusune référence lisib<strong>le</strong> par un SIG, effectuer unchangement de coordonnées de cette référence dans <strong>le</strong>système fourni en entréeSinon, traduire <strong>le</strong>s restrictions spatia<strong>le</strong>s et sémantiquessur l’entité à localiser dans <strong>le</strong> jeu de données, en desrestrictions sur la référence spatia<strong>le</strong> recherchée, etproduire une référence spatia<strong>le</strong> satisfaisant cesrestrictions.Figure 70 : Décomposition de la tâche de localisation. [Figure 70 : Decomposition of the localisation task.]Sous-tâches intervenant dans la décompositionUne sous-tâche essentiel<strong>le</strong> est la localisation élémentaire. El<strong>le</strong> consiste à associer, dans un jeu de données, uneexpression géométrique à une expression sémantique. El<strong>le</strong> s'effectue en fonction de l'expression sémantique enentrée et du schéma de données.Si l'expression sémantique consiste à en une sé<strong>le</strong>ction d'un objet, la géométrie peut être déjà représentée dans <strong>le</strong>jeu de données et associée à l’entité, comme un objet linéaire est associé à une route. Il est possib<strong>le</strong> que cettegéométrie ne soit pas représentée mais puisse être calculée : par exemp<strong>le</strong> associer à un département une surfacequi est la somme des surfaces des communes incluses dans ce département, associer une surface à une zonecultivée délimitée par des routes. Il est éga<strong>le</strong>ment possib<strong>le</strong> que plusieurs lieux soient disponib<strong>le</strong>s pour une entité.Par exemp<strong>le</strong> une vil<strong>le</strong> peut être associée à une surface, l’extension spatia<strong>le</strong> de cette vil<strong>le</strong>, ou à un point, <strong>le</strong>centroïde de cette extension. Le calcul de chacun de ces lieux peut être plus ou moins comp<strong>le</strong>xe. Dans certaines155


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!BDG, des géométries simplifiées sont stockées pour certaines entités, comme un rectang<strong>le</strong> englobant pour uneroute.Le plan faisant appel à cette sous-tâche doit ainsi spécifier <strong>le</strong> type de lieu qui l’intéresse en s’appuyant sur descritères de simplicité du calcul (la géométrie est-el<strong>le</strong> fournie dans <strong>le</strong> jeu de données ou faut-il la calcu<strong>le</strong>r, et àquel prix), et sur des critères d’exploitation du résultat.Une autre sous-tâche essentiel<strong>le</strong> consiste à traduire une relation sémantique en une relation spatia<strong>le</strong>. El<strong>le</strong> estutilisée pour approcher la référence spatia<strong>le</strong> recherchée à partir des connaissances de spécification énoncées parl’utilisateur comme : « l’entité que je recherche est un bâtiment », « <strong>le</strong> bâtiment que je recherche est près d’uneroute », « l’entité que je recherche est au centre de la France ». Le mécanisme de cette tâche peut être spécifiéainsi que la sortie produite. Par exemp<strong>le</strong> si la relation est une relation de distance (ex : “est à une distanceinférieure à 100m de la route r”), <strong>le</strong> résultat est une relation spatia<strong>le</strong> d' inclusion de la référence recherchée dansla zone produite et <strong>le</strong> mécanisme est un buffer. De plus, <strong>le</strong> buffer peut être un traitement SIG ou un traitementeffectué de façon interactive. Dans ce dernier cas, l’utilisateur doit utiliser un SIG pour éditer ses donnéesgraphiquement et traduire lui-même graphiquement la relation spatia<strong>le</strong>.Une autre sous-tâche est <strong>le</strong> changement de système de référence. Cette tâche est bien maîtrisée entre des systèmede référence direct car el<strong>le</strong> correspond alors à des opérations de changement de coordonnées mathématiques. Ildemeure toutefois une difficulté : déduire, à partir de la précision de la référence dans l’ancien système, laprécision de la référence dans <strong>le</strong> nouveau système.Lorsqu’il s’agit d’opérer des changements de systèmes de références entre systèmes dont un est indirect, la tâcheest plus compliquée. Il existe des systèmes de référence spatia<strong>le</strong> indirecte dont la vocation est de permettred’obtenir des références unifiées à partir de références dans divers systèmes. Ces systèmes sont associés à desméthodes de changement de système de référence, des autres systèmes vers <strong>le</strong> système standard.Le « Datum » introduit par [F<strong>le</strong>tcher et al. 98] a ainsi pour rô<strong>le</strong> essentiel “to transform locations between thereal-world space and data-world space(s) and to project positions between spaces”, dans un contexted’applications de navigation, Figure 71. C’est un système de référence indirect linéaire, dans <strong>le</strong>quel <strong>le</strong>sréférences utilisées sont <strong>le</strong>s coordonnées de Vonderhoe [F<strong>le</strong>tcher et al. 98].156


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!COMMENTLieu utilisateurTâche primitiveréférencementLieu unifiéSystème deréférence spatia<strong>le</strong>RéférenceS. R. S. standardS.R.S. direct< définie dansRéférenceDatum : S.R.I. Linéaire< définie dansRéférenceS.R.S. indirectEx :Coordonnées GPS^appartient àPoint d'ancrage^appartient àSection d'ancrageS.R.S. I. élémentaireréférence élémentaire >QUOIcentre deréférenceélémentairevEntité< est relative àRelation spatia<strong>le</strong>Ex : “à 3km du carrefour”Adresse posta<strong>le</strong>“Près de la grande tour”Figure 71 : Représentation des éléments servant à référencer linéairement des objets d’utilisateur dans uneapplication de navigation (éléments repris à partir de [Bédard and Sondheim 97], [F<strong>le</strong>tcher et al. 98]). [Figure71 : Representation of e<strong>le</strong>ments building a linear reference for user objects in a navigation application (after[Bédard and Sondheim 97][F<strong>le</strong>tcher et al. 98])]La notion de « collage spatial » de [Claramunt et Mainguenaud 96] est en fait un changement de système deréférence qui permet de passer d'un système de référence pertinent dans la première vue spatia<strong>le</strong> à un autresystème plus pertinent dans la deuxième vue spatia<strong>le</strong>.Description de la tâche de localisationNous proposons une description BNF de cette tâche, qui a fait l'objet d'une implémentation dans notre prototype.Cette description n'est pas reprise complètement car el<strong>le</strong> est relativement lourde.157


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!TC LocalisationSortie : référence spatia<strong>le</strong>Entrée : entité à localiser, éléments de localisation connusMéthode : Propag spécif : Spécification de sortie(=Int(est définie dans srs spécifique)) 6 Spécification de srssouhaité(=Int(srs spécifique));Spécification de éléments de localisation connus(=Int(est définie dans srs direct))6 Spécificationde entrée "réf connue" de la tâche produisant la ref souhaitée (=Int(éléments de localisationconnus));Spécification de éléments de localisation connus(=Int(est définie dans srs spécifique))6Spécification de entrée "jeu de données" de la tâche produisant <strong>le</strong> srs intermédiaire (=Int(jeusupportant <strong>le</strong> positionnement spécifique d'éléments de localisation connus)) ;Spécification de éléments de localisation connus(=Int(est incluse dans loc spécifique)) 6Spécification de entrée "jeu de données" de la tâche produisant <strong>le</strong> srs intermédiaire (=Int(jeucouvrant la localisation spécifique));Spécification de entité à localiser(=Int(est une entité administrative)) 6 Spécification de entrée"jeu de données" de la tâche produisant <strong>le</strong> srs intermédiaire (=Int(jeu représentant des entitésadministratives));Spécification de entité à localiser(=Int(est proche d'une entité spécifique)) 6 Spécification deentrée "jeu de données" de la tâche produisant <strong>le</strong> srs intermédiaire (=Int(jeu représentantl'entité spécifique)), Spécification de entrée "relation connue" de la tâche produisant la refintermédiaire (=Int(est proche de entité spécifique)) ;Stratégie : Spécification de sortie(=Int(est définie dans srs direct)) 6 plan non détaillé =structure2 ;Spécification de éléments de localisation connus(=Int(est définie dans srs direct))6 plan nondétaillé=structure2 ;….Plan non détaillé : Vocabulaire : srs intermédiaire(srs intermédiaire dans Structure1, srs souhaitédans Structure2),ref intermédiaire (ref intermédiaire dans Structure1,ref souhaitée dansStructure2),srs souhaité(srs souhaité dans Structure1, srs souhaité dans Structure2),ref souhaitée(ref souhaitée dans Structure1, ref souhaitée dans Structure2)OU (Structure1, Structure2)structure Structure1 : vocabulaire = (srs intermédiaire, ref intermédiaire, srs souhaité, refsouhaitée)ET(AcquérirSRS/ sortie = srs intermédiaire;ProduireRS/srs=srs intermédiaire/ sortie=ref intermédiaire;AcquérirSRS/ sortie = srs souhaité;ProduireRS/srs=srs souhaité/ref connue=ref intermédiaire/ sortie=ref souhaitée)structure Structure2 : vocabulaire = (srs souhaité, ref souhaitée)ET(AcquérirSRS/sortie=srs souhaité;ProduireRS/srs=srs souhaité/sortie=ref souhaitée)Nous ne détaillons pas la tâche d'acquisition d'un système de référence spatia<strong>le</strong> qui est modélisée commel'acquisition d'un jeu de données géographiques. Cette tâche devra par la suite être détaillée davantage. Enparticulier, el<strong>le</strong> peut être réalisée en acquérant plusieurs jeux et en <strong>le</strong>s intégrant.TC ProduireRS (Production d'une référence spatia<strong>le</strong>)Sortie : référence spatia<strong>le</strong>158


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Entrée : système de référence spatia<strong>le</strong> (Int(système de référence, cartographie, navigation)), référence connueMéthode : Propag spécif : Spécification de sortie de structureK 6 Spécification de restrictions delocalisation+=sortie spécifiée ;Stratégie : Spécification de référence spatia<strong>le</strong> connue (=définie dans SRS direct) 6 S =Changement de système de coordonnée;Spécification de relation connue (=proche de entité spécifique) 6 S = ET(Localisationélémentaire, Buffer(/matrice géométrique = sortie de Localisation élémentaire));……Plan non détaillé : Vocabulaire : relations connues, restrictions de localisation, référence spatia<strong>le</strong>connueTANT QUE((L'utilisateur n'est pas satisfait du résultat)^(L'utilisateur peut spécifier encore desrô<strong>le</strong>s de la tâche de localisation)) REPETE(ET(S , CroisementRestriction)structure S : OU (Changement de système de coordonnées/entrée=référence spatia<strong>le</strong>connue),(Localisation élémentaire), ET(Localisation élémentaire/entité = entité spécifique/srs =SRS , Traduction de relation sémantique en restriction de localisation))))La tâche Traduction de relation sémantique en restriction de localisation produit des restrictions du type : estincluse dans zone spécifique, intersecte zone spécifique, n'intersecte pas zone spécifique, contient zonespécifique. Ces restrictions traduisent <strong>le</strong>s relations sémantiques connues spécifiées au niveau de la tâcheProduireRS.La tâche CroisementRestriction consiste à définir une référence spatia<strong>le</strong> dans <strong>le</strong> système SRS satisfaisant toutes<strong>le</strong>s restrictions de localisation.3.2.4.3 Exploitation du modè<strong>le</strong> de localisationLe principal intérêt de ce modè<strong>le</strong> de la tâche de localisation concerne la mise de l’informationgéographique à disposition du grand public. En effet la principa<strong>le</strong> question géographique que sepose <strong>le</strong> grand public est une question « où est-ce ?». Le modè<strong>le</strong> a montré qu’il existait denombreuses formes de réponses et qu’il était important de savoir quel<strong>le</strong> forme de « où » intéressaitl’utilisateur. Il a aussi montré quel<strong>le</strong>s connaissances de l’utilisateur sur l’entité à localiser exploiterpour obtenir ce « où » recherché. Ceci est illustré sur la Figure 72.Les connaissances sur <strong>le</strong>squel<strong>le</strong>s s'appuie <strong>le</strong> dialogue Figure 72 sont :- <strong>le</strong>s connaissances des tâches de localisation, d'acquisition d'un système de référence spatia<strong>le</strong>, de productiond'une référence spatia<strong>le</strong>,- <strong>le</strong>s connaissances du domaine.Par contre, <strong>le</strong>s phrases apparaissant dans cette figure ont été rédigées à la main. El<strong>le</strong>s ne correspondent pas à uneinterface de dialogue en langage naturel du système mais el<strong>le</strong>s veu<strong>le</strong>nt dépeindre de façon claire <strong>le</strong>sconnaissances communiquées entre <strong>le</strong> système et l'utilisateur.Les modalités de ce dialogue sont <strong>le</strong>s interfaces graphiques du prototype présentées dans la section suivante.159


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ eh TiS:T-bFT:fFfFTjT£]?fdg fKRk§S:e:]FQlY]JQ?m§QfKnHo,TOPQQFR:S:THU§VXW?PYQZS:R§[.\Y]FT_^`Ra?RH^`T£]b?TLQdcdedf§g^.Tbfk:h g ]FRe:g ^`TLPYjUP]Feh TLpSgz y {F|H}~J€:|:{l"‚€:|:{Zƒ„.‚ƒd‚§{?…{lƒd‚~„"{dƒ…†y ‡y |H„J†?|x?xK|Dz ‚†?ˆz y {?ˆ§x§y ‚‰:„.|†xFˆ:FŠHz |j|£FŠHz ‚‹ˆ:?xw5x§y„`|†x§Ž}‚F|Lˆ§€£By §y {xd„.ˆdx§y ?|€:ˆ:?{l~B{FŒ{?xF"|i€y¤'()¡*+(,¤'--./©0" 1" 32¤-0,$¤ 4$05/ " -5" 6',-2-78%5¡" 59/¤-¤:¡6¡'¤"¡-,©%,538% ; $¡5¡" ©%-$¡(©0¥(,¡5 4" ¤-¥-'" (,$%5¤-@?• A¡BDC9E¤FBHG FI¤J,K¥L¤M,BNOHF¤J4P¤FPQRQ


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.2.5 La tâche de détection de proximité et de détermination denavigationNous analysons dans cette section la tâche de détection de proximité dont un cas particulier est <strong>le</strong> calculd’itinéraire, soit encore la détermination d' une navigation.Il existe de nombreux systèmes de calcul d’itinéraire et nous ne cherchons pas à analyser <strong>le</strong>urs mécanismes et àévaluer <strong>le</strong>s méthodes qu’ils appliquent pour effectuer cette tâche. Par contre nous nous attachons à laspécification du besoin de calcul d’itinéraire. En effet, <strong>le</strong>s systèmes actuels proposent un calcul avec peu deparamètres alors que dans la réalité, de nombreux paramètres interviennent dans la détermination d’un itinéraireoptimal.3.2.5.1 Les rô<strong>le</strong>s de la détection de proximitéL’objectif de cette tâche : déterminer des objets proches d’un autre. La notion d’être proche est associée à unconcept important : <strong>le</strong> voisinage. Ce concept est lui-même associé au concept de distance. Ces concepts sontpurement spatiaux. Pourtant, on peut envisager une tâche de détection de proximité associée à une navigationcomme par exemp<strong>le</strong> « Quel<strong>le</strong> est la station d’essence la plus proche en voiture ? ». Nous utilisons <strong>le</strong> termeproximité pour englober plusieurs cas : celui du voisinage associé à une distance purement spatia<strong>le</strong> et d’autrescas comme la distance associée à la navigation d’un agent. La distance associée à une navigation est un coût entemps ou longueur.La structure des rô<strong>le</strong>s de la détection de proximité comprend une base, un but, et une proximité de la base au but,Figure 73. Ceci est lié à deux considérations. La première est que la distance servant à évaluer une proximitén’est pas toujours symétrique. Une distance purement spatia<strong>le</strong> est symétrique. Une distance associée à lanavigation d’un agent est rarement symétrique : il peut être rapide de se rendre de A à B en voiture mais <strong>le</strong> retourpeut être plus long selon <strong>le</strong>s restrictions de circulation (sens interdits, feux). La deuxième est que la question peutse décliner en : l’objet <strong>le</strong> plus proche, <strong>le</strong>s n plus proches, ceux qui sont à une distance inférieure à une certaineva<strong>le</strong>ur. Ces cas particuliers ne sont pas symétriques. Par exemp<strong>le</strong> si tel hôtel H est <strong>le</strong> plus proche d’une station demétro M, cela n’implique pas que M est la station de métro la plus proche de H.161


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!COMMENTProximitéDistanceBaseButQUOIEntitédéfinie dansvS.R.S. directlocalisée parvRéférence1..n10..n1..n< pointde départ< pointd’arrivée< définie dans1..n1..nVa<strong>le</strong>ur mesurée+précision1..nmesure utiliséev1Mesure de distanceTemps de parcours+précisionFigure 73 : Objets du domaine associés aux rô<strong>le</strong>s de détection de proximité, dans <strong>le</strong> cas d’une distance définiedans un S.R.S. direct. [Figure 73 : Domain objects associated to the proximity detection ro<strong>le</strong>s, in the case wherethe distance is defined in a direct S.R.S..]3.2.5.2 Les rô<strong>le</strong>s de la détermination de navigationNous détaillons <strong>le</strong>s rô<strong>le</strong>s liés à la navigation.De nombreux éléments sont fournis dans la littérature, soit pour formaliser des principes cognitifs de navigation,soit dans une optique de fédérer des données géographique pour des applications de navigation, 2.2.2.1.Temps, localisation spatio-temporel<strong>le</strong> et événementLe temps est une notion importante pour construire et décrire une dynamique comme la navigation. La notion detemps perçue par l’homme est attachée au changement et au mouvement. Le changement est la différence entredeux états, en particuliers à des dates différentes.Pour représenter cela, nous introduisons tout d’abord la notion de localisation spatio-temporel<strong>le</strong> : l’associationentre une localisation spatia<strong>le</strong> et une référence dans un système de référence temporel.Notons qu’une caractéristique importante d’un système de référence spatia<strong>le</strong> est sa stabilité temporel<strong>le</strong>. Parexemp<strong>le</strong>, <strong>le</strong> système utilisé dans l’expression « au niveau de la twingo rouge garée là-bas », est instab<strong>le</strong>. Cettecaractéristique entre en jeu dans <strong>le</strong> choix d’une site admissib<strong>le</strong> pour localiser une entité donnée [Denand 00].162


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!La notion de changement est représentée par l’événement dans <strong>le</strong> monde et l’évolution dans la représentation[Claramunt et al. 94].Enfin, <strong>le</strong> mouvement d’un sujet peut être représenté comme une suite continue de localisations spatiotemporel<strong>le</strong>sde ce sujet. Ces localisations sont vues soit comme des situations statiques, des photos figées, soitcomme des situations dynamiques.Navigation, trajectoireNous utilisons <strong>le</strong> terme navigation au lieu de mouvement. C’est une activité particulière qui peut être représentéepar notre schéma général Figure 57.Pour nous rattacher aux éléments en place du modè<strong>le</strong>, et introduire la contrainte de continuité, nous modélisonsla navigation comme une suite chronologique dans <strong>le</strong> temps de localisations spatiotemporel<strong>le</strong>s d’une mêmeentité, qui doit posséder une continuité significative dans <strong>le</strong> référentiel temporel utilisé pour caractériser <strong>le</strong>slocalisations.Le mouvement respecte des contraintes comme :- la contrainte de continuité par rapport au temps- la contrainte de véhicu<strong>le</strong> : si je suis dans une voiture et que cette voiture bouge alors je suis <strong>le</strong> déplacementde la voiture- la contrainte de support de navigation : une entité ne peut pas bouger librement dans l’espace géographique.Par exemp<strong>le</strong> un homme ne peut pas traverser un mur, ou vo<strong>le</strong>r au dessus d’un océan sans moyen detransport.Le concept de trajectoire correspond à la suite de localisations spatia<strong>le</strong>s associées à une navigation : il n’y a pasde notion temporel<strong>le</strong> dans une trajectoire alors qu’il y en a une dans la navigation.QUOIComportementDurée1 0 ..n< dureNavigation1 ..nest associée à >1Trajectoirecomprendv0..11..n0..n1..ncomprendvLocalisation spatia<strong>le</strong>dynamique1..nest associée à >1Localisation spatia<strong>le</strong>statiqueFigure 74 : Les termes de navigation et de trajectoire. [Figure 74 : The concepts of navigation and oftrajectory.]Nous introduisons ci-dessous <strong>le</strong> vocabulaire d’une navigation dans <strong>le</strong>s représentations de l’homme. Ces termessont rattachés au rô<strong>le</strong> générique « navigation », qui est défini au paragraphe précédent.Le rô<strong>le</strong> navigation principa<strong>le</strong> désigne la navigation de l’entité qui doit changer de lieu dans la tâche denavigation. C’est une navigation caractérisée par des localisations particulières : départ, destination, dessertes.L’agent de la navigation principa<strong>le</strong> peut être transporté par une autre entité. Nous exprimons cela de la façon163


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!suivante : une navigation peut être véhiculée par une autre. Dans ce cas on ne se préoccupe pas de la navigationrelative de l’entité par rapport à son véhicu<strong>le</strong> et on lui donne pour références spatia<strong>le</strong>s et temporel<strong>le</strong>s cel<strong>le</strong>s deson véhicu<strong>le</strong>. Pour regrouper la notion de prise de véhicu<strong>le</strong>, de navigation supportée par la navigation duvéhicu<strong>le</strong> et d' abandon de véhicu<strong>le</strong>, nous utilisons <strong>le</strong> terme "véhicu<strong>le</strong>ment".Notre modè<strong>le</strong> doit permettre de stocker <strong>le</strong>s relations entre entités : « est un véhicu<strong>le</strong> admissib<strong>le</strong> de ». et par uneou plusieurs navigations véhiculantes successives.COMMENTCoûtNavigationprincipa<strong>le</strong>Agent DépartDessertes Véhicu<strong>le</strong>ment DestinationQUOIDuréeEntitéLocalisationspatia<strong>le</strong>NavigationFigure 75 : Rô<strong>le</strong> associés à la spécification d’une navigation principa<strong>le</strong>. [Figure 75 : Ro<strong>le</strong>s associated to thespecification of a user’s navigation.]Un "véhicu<strong>le</strong>ment" est caractérisé par <strong>le</strong> véhicu<strong>le</strong> mais ne se résume pas à la navigation du véhicu<strong>le</strong>. Le véhicu<strong>le</strong>peut être l’agent de la navigation principa<strong>le</strong> lui-même (ex : quand je marche à pied) ou une autre entité (ex : unevoiture, un train… ). Les abandon et prise de véhicu<strong>le</strong> sont des comportements de l’entité agent. Il sont soumis àdes contraintes, comme « il n’est pas permis d’abandonner son véhicu<strong>le</strong> au bord de l’autoroute s’il n’est pas enpanne ».COMMENTVéhicu<strong>le</strong>mentVéhicu<strong>le</strong>Prise devéhicu<strong>le</strong>Navigation duvéhicu<strong>le</strong>Abandon devéhicu<strong>le</strong>QUOIest unvéhicu<strong>le</strong>admissib<strong>le</strong>pourvEntitéComportementNavigationFigure 76 : Rô<strong>le</strong>s associés à la spécification d’une navigation véhiculante. [Figure 76 : Ro<strong>le</strong>s associated to thespecification of a vehiculating process.]Par ail<strong>le</strong>urs, un agent –éventuel<strong>le</strong>ment un véhicu<strong>le</strong>- qui n’est pas véhiculé doit être supportée. Notre modè<strong>le</strong> doitpermettre de stocker des relations comme : « est un support admissib<strong>le</strong> de ». Nous considérons cette relationcomme une relation entre navigation : une navigation peut être supportée par une navigation « support ». Lesnavigations support seront généra<strong>le</strong>ment des navigations immobi<strong>le</strong>s (typiquement une route ne se déplace pas surla terre).164


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Alors que la localisation de l’agent est liée de façon constante à cel<strong>le</strong> de son véhicu<strong>le</strong>, il est souvent nécessaire dediscriminer la localisation d’un agent ou d’un véhicu<strong>le</strong> à l’intérieur de la localisation de l’entité support. Lesévolutions de cette localisation (d’une entité à l’intérieur d’une entité support) sont éventuel<strong>le</strong>ment soumises àdes contraintes de guidage (on ne peut pas faire demi-tour sur une autoroute). Nous modélisons cela enintroduisant la notion de portion guidée et de prise et abandon de guide. Une portion guidée est une partie de lanavigation où il n’y a pas de possibilité de changer d’itinéraire –par exemp<strong>le</strong> une portion d’autoroute entre deuxsorties-. Une prise et un abandon de guide sont des comportements de l’agent de la navigation, comme tourner àun carrefour, et ces comportements sont soumis à des contraintes.En définitive, un support de navigation d’un véhicu<strong>le</strong> est caractérisée par une entité support, <strong>le</strong>s abandons etprises de support qui sont des localisations (accès du véhicu<strong>le</strong> à l’entité support). L’itinéraire du véhicu<strong>le</strong> àl’intérieur de l’entité support ne correspond pas exactement à la trajectoire du véhicu<strong>le</strong> mais plutôt à ce qui suffità caractériser la navigation principa<strong>le</strong> (pour une tâche de guidage par exemp<strong>le</strong>, ou de mesure de consommationd’essence etc.). Les guides de navigation d’une entité dans l’entité support sont des parties de cette entité dans<strong>le</strong>squel<strong>le</strong>s l' entité ne peut avoir qu' une trajectoire possib<strong>le</strong>. Par exemp<strong>le</strong> une portion d' autoroute entre deux sortiesest un guide de navigation pour une voiture.COMMENTNavigation du véhicu<strong>le</strong>SupportEntitésupportPrise desupportNavigation dusupportItinéraire danssupportAbandon dusupportPrise de guide Portion guidée Abandon deguideQUOIest unsupportadmissib<strong>le</strong>pourvEntitéComportementFigure 77 : Rô<strong>le</strong>s associés à la spécification de la navigation d’un véhicu<strong>le</strong>. [Figure 77 : Ro<strong>le</strong>s associated to thespecification of the navigation of a vehic<strong>le</strong>.]Des connaissances importantes à stocker dans notre système sont <strong>le</strong>s connaissances de valuation des rô<strong>le</strong>s :- <strong>le</strong>s relations entre entités : « est un véhicu<strong>le</strong> admissib<strong>le</strong> pour » et « est un support admissib<strong>le</strong> pour »,- <strong>le</strong>s connaissances de satisfaction des contraintes de comportement : prise et abandon de véhicu<strong>le</strong>, prise etabandon de support, prise et abandon de guide.3.2.5.3 Exploitation du modè<strong>le</strong> de navigationNous n’avons pas développé la méthode généra<strong>le</strong> de calcul d’itinéraire. El<strong>le</strong> consiste à construire un graphereflétant <strong>le</strong>s caractéristiques de la navigation et utiliser un algorithme d’optimisation de parcours de graphe.165


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Dans notre modè<strong>le</strong>, ce graphe est défini de la façon suivante :- Les arêtes sont des portions guidées.- Les sommets sont des comportements de prise ou abandon de véhicu<strong>le</strong>, de prise ou abandon de support et deprise ou abandon de portion guidée.Ce modè<strong>le</strong> permet de tenir compte très largement du contexte de l’utilisateur et de nombreuxfacteurs entrant en jeu dans la spécification de la navigation qui l’intéresse.Ce modè<strong>le</strong> donne éga<strong>le</strong>ment des pistes pour aider un utilisateur à effectuer la tâche de calcul d’itinéraire ainsispécifiée. Les connaissances de valuation des rô<strong>le</strong>s permettent à un système de déterminer quels éléments utiliserpour construire <strong>le</strong> graphe. D’autres connaissances sont nécessaires pour effectuer l’optimisation, il s’agit de laspécification de la notion de coût pour l’utilisateur. Le coût peut correspondre à un temps minimum denavigation, ou à un nombre maximal de portions d’itinéraire dans des paysages agréab<strong>le</strong>s, ou à un minimum defrais (bil<strong>le</strong>t de train, location de véhicu<strong>le</strong>, essence, péages, etc.). Notons que <strong>le</strong> coût est souvent un compromis.Ceci est illustré sur la Figure 78. Les phrases apparaissant dans cette figure ont été rédigées à la main. El<strong>le</strong>s necorrespondent pas à une interface de dialogue en langage naturel du système mais el<strong>le</strong>s veu<strong>le</strong>nt dépeindre defaçon claire <strong>le</strong>s connaissances communiquées entre <strong>le</strong> système et l' utilisateur.166


"# $%'&"() *,+ * "!- !§.*,! * /!0/132 054,+ f9 :ILeQ>:G.EN


¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "!$#"% #'&)(+*,.-0/ "!!/.1 / "!243$56 287.1 3.3 Opérationnalisation du modè<strong>le</strong>Cette section présente un prototype implémentant <strong>le</strong> modè<strong>le</strong> présenté dans la section 3.1.2. L’enjeu est d' évaluer<strong>le</strong>s fonctionnalités suivantes de notre système :- permettre de stocker une base de connaissances correspondant au modè<strong>le</strong> des tâches géographiques.Cela nécessite d' une part de définir <strong>le</strong>s éléments génériques utilisés pour stocker des tâches, plans,rô<strong>le</strong>s et des éléments du domaine. Cela nécessite d' autre part de remplir la base en stockant desconnaissances particulières en <strong>le</strong>s décrivant à l' aide de ces éléments. Ces connaissances particulièresseront reprises des sections précédentes.- permettre de coder <strong>le</strong>s fonctionnalités voulues du système expert manipulant cette base deconnaissances pour aider l' accès d' un utilisateur, c' est-à-dire aider à la sé<strong>le</strong>ction d’information uti<strong>le</strong>.Nous choisissons de représenter notre modè<strong>le</strong> en orienté-objet car <strong>le</strong>s langages orienté-objet sont des langages dereprésentation proches de la modélisation. Nous choisissons <strong>le</strong> langage de programmation orienté-objet java.C’est un langage simp<strong>le</strong> à utiliser et qui se prête bien à la réalisation d’interfaces grâce à une bibliothèque decomposants.3.3.1 La représentation du modè<strong>le</strong> de tâches géographiques3.3.1.1 La représentation du domaineUn défaut de java est la non persistance des objets dans <strong>le</strong> code. Pour pallier cela, java offre divers mécanismespour conserver des objets entre deux sessions d' une application.Par exemp<strong>le</strong>, <strong>le</strong> jdbc est une bibliothèque de composants qui permet de stocker des objets java sous forme detab<strong>le</strong>s relationnel<strong>le</strong>s.Un autre mécanisme est la sérialisation qui consiste à écrire des objets dans un fichier lors d' une session. A lasession suivante, il est possib<strong>le</strong> de relire ces objets à condition de connaître <strong>le</strong>urs définitions de classes et que cesdéfinitions implémentent certaines méthodes. Toutefois <strong>le</strong>s références des objets ne sont pas conservées. L' intérêtde la sérialisation, outre sa facilité d' emploi, est qu' il est possib<strong>le</strong> de sérialiser des objets sous forme de fichiersXML, aisément lisib<strong>le</strong>s.Dans <strong>le</strong> cadre du prototype, nous choisissons de nous appuyer sur la sérialisation pour stocker <strong>le</strong> domaine. Pourcela, nous construisons une classe générique EltDomaine qui permet de stocker <strong>le</strong>s éléments du domaine168


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!comme des objets de cette classe. Nous utilisons, comme référence d'un objet sérialisé, une variab<strong>le</strong>particulière de cet objet : son nom. Notons que certains éléments spécifiques seront représentés non pas commedes instances de EltDomaine mais comme des instances de sous-classes d'EltDomaine, lorsque ceséléments ont des méthodes spécifiques uti<strong>le</strong>s. Il s'agit par exemp<strong>le</strong> des classes Schéma et Couverture.Un objet EltDomaine est décrit par sa variab<strong>le</strong> nom, et par des objets Propriété.La classe Propriété comporte plusieurs variab<strong>le</strong>s : <strong>le</strong> nom de la propriété, son arité, la classe dans laquel<strong>le</strong>el<strong>le</strong> prend ses va<strong>le</strong>urs et l’ensemb<strong>le</strong> de ses va<strong>le</strong>urs. Par exemp<strong>le</strong>, l'élément "localisation" a une propriété nommée"est incluse dans" qui prend pour va<strong>le</strong>ur des éléments "localisation".Un objet EltDomaine possède deux propriétés particulières nommées representation et produitPar.La propriété representation recouvre <strong>le</strong>s liens avec d’autres éléments du domaine correspondant à unereprésentation de cet élément, c’est-à-dire une forme plus concrète opérationnel<strong>le</strong> pour l’utilisateur. Par exemp<strong>le</strong>,un système de référence spatia<strong>le</strong> peut être représenté par un jeu de données géographiques de références ou parune carte. Notons que la sortie obtenue dans <strong>le</strong> plan d'exécution d'une tâche est généra<strong>le</strong>ment un élément dudomaine qui se trouve dans la propriété representation de l’élément décrivant la sortie de cette tâche.La propriété produitPar recouvre <strong>le</strong>s liens avec <strong>le</strong>s ressources dynamiques produisant cet élément. Parexemp<strong>le</strong>, l'élément localisation est produit par la tâche comp<strong>le</strong>xe de localisation, une distance est produite parune mesure de distance, un bassin versant est produit par une tâche primitive enchaînant des algorithmesspécifiques de calculs d'élévations.La classe Ensemb<strong>le</strong> joue un rô<strong>le</strong> clé dans <strong>le</strong>s processus de spécification présentés par la suite. Comme nousl'avons introduit dans notre langage de description de tâches, un ensemb<strong>le</strong> peut être défini de façon intensive ouextensive. Jusqu’ici nous avons prévu la représentation d’un type simp<strong>le</strong> d’intension mais il sera possib<strong>le</strong> par lasuite d’en rajouter d’autres. Cela consiste à désigner un élément e du domaine tel que l’ensemb<strong>le</strong> est l’ensemb<strong>le</strong>des éléments du domaine, explicités ou non dans <strong>le</strong> domaine, qui correspondent à des cas particuliers (desspécialisations) de e.L’élément peut être précisé en contraignant <strong>le</strong>s va<strong>le</strong>urs de ses propriétés. Une variab<strong>le</strong> de l'élément permet designa<strong>le</strong>r si certaines de ses propriétés ont été contraintes par rapport à sa définition initia<strong>le</strong>.La notion d’intension est un intermédiaire important entre <strong>le</strong> discours de l’utilisateur et <strong>le</strong> domaine géographiquedu système : si l’utilisateur utilise <strong>le</strong> terme « entité », <strong>le</strong> système comprend « un élément appartenant àl ’ensemb<strong>le</strong> des entités que je connais dans mon domaine ». Un cas particulier est la description de jeux dedonnées. Cela peut être des données disponib<strong>le</strong>s ou dérivées. L’ensemb<strong>le</strong> des données est décrit par un objet :descriptionDonnées = new Intension() ;descriptionDonnées.e<strong>le</strong>ment = new EltDomaine("JeuDonnees") ;descriptionDonnées.e<strong>le</strong>ment.proprietesContraintes ={« echel<strong>le</strong> », « couverture »,...} ;169


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!EltDomaine+ type : IntegerIntension0.. 1e<strong>le</strong>ment >10..1+ nom : String+ tab<strong>le</strong>Proprietes : Hashtab<strong>le</strong>+ proprietesContraintes : String[ ]1^intension0.. 1+ nom : StringEnsemb<strong>le</strong>+ e<strong>le</strong>ments : Object[ ]1< va<strong>le</strong>ur10..nPropriete+ nom : String+ arite : String+ classe : String< extensionFigure 79 : Classes utilisées dans la représentation des éléments du domaine géographique.3.3.1.2 La représentation des tâchesConcernant la représentation des tâches nous reprenons <strong>le</strong>s éléments définis dans notre langage, section 3.1.2.5,ayant des caractéristiques communes comme tâche, tâche comp<strong>le</strong>xe, méthode, rô<strong>le</strong>, pour définir des classesdécrites Figure 80 :- la classe Tache, étendue par <strong>le</strong>s classes TacheComp<strong>le</strong>xe et TachePrimitive,- la classe Ro<strong>le</strong>, décrite par son nom, <strong>le</strong>s va<strong>le</strong>urs prises par <strong>le</strong> rô<strong>le</strong> dans <strong>le</strong> domaine (la variab<strong>le</strong> candidat) et latâche à laquel<strong>le</strong> <strong>le</strong> rô<strong>le</strong> est attaché.- la classe Methode, décrite par un plan plus ou moins spécifié, qui est une structure de tâches, et des objetsReg<strong>le</strong>.- la classe StructureTaches, définie par un type, un vocabulaire, des sous-tâches et des sous-structures.Pour l'instant nous avons prévu <strong>le</strong>s cas où <strong>le</strong> type de la structure est "ou" ou "et". Il nous faudra définir par lasuite <strong>le</strong>s autres types de termes d'enchaînement.La variab<strong>le</strong> vocabulaireStructure est une tab<strong>le</strong> de hachage dont <strong>le</strong>s clés sont des mots. Ces mots sont <strong>le</strong>vocabulaire de détermination de la tâche dont la méthode a pour plan la structure. Comme dans <strong>le</strong> langage dedescription, <strong>le</strong>s objets associés aux clés dans la tab<strong>le</strong> peuvent être de plusieurs types. Si la structure est comp<strong>le</strong>xeet se décompose en sous-structures, <strong>le</strong>s objets sont des tab<strong>le</strong>aux de mots, qui décrivent en fait, pour un terme duvocabulaire de la structure principa<strong>le</strong>, <strong>le</strong>s termes auxquels ils renvoient dans <strong>le</strong> vocabulaire de chaque sousstructure.Si la structure se décompose en sous-tâches, <strong>le</strong>s objets associées aux clés sont des rô<strong>le</strong>s des soustâches.De plus, dans un plan, une sortie d’une sous-tâche peut être une entrée d'une autre. Il faut représenter cettedépendance entre rô<strong>le</strong>s. Nous avons représenté une forme très simp<strong>le</strong> de dépendance entre rô<strong>le</strong>s : la variab<strong>le</strong>candidats d'un rô<strong>le</strong> prend la va<strong>le</strong>ur de la variab<strong>le</strong> candidats de son ro<strong>le</strong>Amont s'il en a un. Parexemp<strong>le</strong>, dans la tâche de localisation, un pas consistant à acquérir un système de référence spatia<strong>le</strong> est suivi d'unpas consistant à produire une référence spatia<strong>le</strong> : la va<strong>le</strong>ur de la sortie "système de référence spatia<strong>le</strong> acquis" dupremier pas est la va<strong>le</strong>ur de l'entrée "système de référence dans <strong>le</strong>quel produire la référence" du pas suivant.Il peut exister des formes de dépendance plus comp<strong>le</strong>xes, qu'il faudra par la suite représenter au cas par cas.170


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!TacheComp<strong>le</strong>xe11Methode+ reg<strong>le</strong>s : Reg<strong>le</strong> [ ]methodevTache+ nom : String1entrees >TachePrimitive+ mecanisme : String0..nsortie >1 1Ro<strong>le</strong>+ nom : String+ candidats: Ensemb<strong>le</strong>+ ro<strong>le</strong>Amont : Ro<strong>le</strong>+ro<strong>le</strong>Aval : Ro<strong>le</strong>[ ]0..11planvStructureTaches+ type : String+ vocabulaire : Hashtab<strong>le</strong>+ sousStructures: StructureTaches[ ]+sousTaches : Tache[ ]Figure 80 : Classes utilisées pour représenter <strong>le</strong>s tâches géographiques.Une contrainte majeure dans la représentation des tâches géographiques est qu'el<strong>le</strong> doivent être des instancesd'une même classe et ne doivent pas comporter de connaissances procédura<strong>le</strong>s spécifiques. Les connaissancesprocédura<strong>le</strong>s de spécification de toute tâche géographique particulière doivent être décrite de façon indépendantedans une même tâche générique.Dans la suite, nous ne présentons pas l'écriture des tâches de localisation, d'acquisition d'un système de référenceet de production d'une référence spatia<strong>le</strong>, car ces écritures java ne sont pas lisib<strong>le</strong>s. El<strong>le</strong>s comportent desconnaissances déclaratives qui doivent être associées à des connaissances procédura<strong>le</strong>s pour prendre <strong>le</strong>ur sens.Ces connaissances procédura<strong>le</strong>s sont écrites dans des classes génériques indépendantes des objets décrivant <strong>le</strong>stâches géographiques.Pour représenter <strong>le</strong>s Reg<strong>le</strong>, nous introduisons plusieurs classes.La prémisse est décrite comme des tests. Ces tests doivent être appliqués sur un objet SpecificationRo<strong>le</strong>décrivant la spécification qui a conduit à activer la méthode de la tâche.Les variab<strong>le</strong>s de SpecificationRo<strong>le</strong> se décomposent en des variab<strong>le</strong>s dédiées à l'identification du rô<strong>le</strong>spécifié et une variab<strong>le</strong> dédiée à la description de la spécification même des candidats de ce rô<strong>le</strong>, de typeSpecificationEnsemb<strong>le</strong>. Nous ne détaillons pas cette dernière classe qui est spécifique à notrereprésentation du domaine et des ensemb<strong>le</strong>s.Pour ce qui est des actions possib<strong>le</strong>s, nous avons précisé dans la grammaire BNF qu’el<strong>le</strong>s pouvaient être deplusieurs types. Ces actions sont décrites comme autant de variab<strong>le</strong>s différentes au niveau de l'objet Reg<strong>le</strong>.Ainsi la modification de plan est décrite comme un entier qui est <strong>le</strong> numéro de la sous-structure choisie dans <strong>le</strong>tab<strong>le</strong>au sousStructures de l'objet StructureTaches décrivant <strong>le</strong> plan. Les variab<strong>le</strong>s propagSpecifdécrivent comme la spécification de rô<strong>le</strong> qui a conduit à appliquer <strong>le</strong>s règ<strong>le</strong>s est propagée à la spécificationd'autres rô<strong>le</strong>s.171


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Nous ne détaillons pas ici la classe PropagationSpecif, el<strong>le</strong> comporte de nombreuses variab<strong>le</strong>s. Certainessont dédiées à la désignation des rô<strong>le</strong>s concernés par la propagation. D'autres sont dédiées à la description de laspécification même (spécification des ensemb<strong>le</strong>s candidats des rô<strong>le</strong>s désignés), ou plus exactement de ladéfinition de cette spécification à partir de la spécification initia<strong>le</strong>.Reg<strong>le</strong>+ modifPlan : integer+ proposSpecif : Object[ ]+ appliquee : boo<strong>le</strong>an0..npremisses >1..nPremisse+ nomTest : String+ parametre : Object0..n0..npropagSpecifvPropagationSpecif0..nSpecification initiant la propagation1 vSpecificationRo<strong>le</strong>+ nomDansTache : String+ tache : Tache+ ro<strong>le</strong> : Ro<strong>le</strong>+ specification : SpecificationEnsemb<strong>le</strong>Figure 81: Classes utilisées pour représenter <strong>le</strong>s connaissances de spécification géographiques.3.3.2 La dynamique associée au modè<strong>le</strong> géographiqueIl ne suffit pas de stocker des tâches géographiques, il faut encore pouvoir <strong>le</strong>s manipu<strong>le</strong>r dans <strong>le</strong> raisonnement del’accès : « traduire un besoin d’utilisateur en sé<strong>le</strong>ction d’information uti<strong>le</strong>, et en une désignation de ressourcesuti<strong>le</strong>s pour dériver cette information. » Ce raisonnement doit être réparti entre un système expert et un utilisateur.Il est donc important de coder <strong>le</strong>s fonctionnalités du système expert correspondant à sa contribution auraisonnement, présentées section 3.3.2.1, et de coder <strong>le</strong>s interfaces supportant <strong>le</strong>s communications nécessairesentre l’utilisateur et <strong>le</strong> système lors du raisonnement global, présentées section 3.3.2.2.3.3.2.1 Mécanismes de spécificationPrincipeRappelons <strong>le</strong> principe de l'exploitation du modè<strong>le</strong> de tâches géographiques dans notre système. Le besoin del’utilisateur est représenté comme une TacheComp<strong>le</strong>xe. La réponse à ce besoin est donnée par cette mêmetâche, une fois spécifiée :172


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!- la facette déclarative décrit <strong>le</strong> besoin et <strong>le</strong> contexte de l’utilisateur (la « sé<strong>le</strong>ction d’information uti<strong>le</strong> » estexprimée dans la variab<strong>le</strong> sortie),- la facette opérationnel<strong>le</strong> décrit la réponse (la « sé<strong>le</strong>ction de ressources uti<strong>le</strong>s » est représentée dans <strong>le</strong>sentree des tâches primitives composant <strong>le</strong> plan détaillé de la tâche qui n' ont pas de ro<strong>le</strong>AMont).En définitive, <strong>le</strong> processus d' aide à l' accès consiste à spécifier une tâche qui représente à la fois <strong>le</strong>besoin de l’utilisateur -facette déclarative de la tâche- et la réponse à ce besoin -plan d' exécutionde la tâche-Le système possède des connaissances de spécification géographiques, et des connaissances de spécificationgénériques.Les connaissances géographiques sont <strong>le</strong>s règ<strong>le</strong>s des méthodes des tâches. El<strong>le</strong>s sont représentées de façondéclarative, et ont été décrites dans la section précédente.Les connaissances génériques sont <strong>le</strong>s connaissances de manipulation de tâches comme <strong>le</strong> déc<strong>le</strong>nchement d’unerèg<strong>le</strong> quand un rô<strong>le</strong> est spécifié, la propagation de la spécification d’un rô<strong>le</strong> du vocabulaire d’une structure auxrô<strong>le</strong>s des sous-structures ou sous-tâches, la propagation de la spécification d' un rô<strong>le</strong> aux rô<strong>le</strong>s éventuels dont i<strong>le</strong>st rô<strong>le</strong> amont. Ces connaissances ont été décrites dans la section 3.1.3. Nous détaillons dans la suitel' implémentation de ces connaissances.Algorithmes utilisésUne première étape pour spécifier <strong>le</strong> côté déclaratif du besoin consiste à représenter ce besoin comme uneinstance d’une classe représentant une tâche géographique connue. Le système présente <strong>le</strong>s TacheComp<strong>le</strong>xequ’il connaît en décrivant <strong>le</strong>ur sortie, l ’utilisateur choisit un de ces objectifs géographiques génériques, et <strong>le</strong>système crée l’objet besoinUtilisateur = Tache_i.copie(), où Tache_i est la classecorrespondant à l’objectif sé<strong>le</strong>ctionné par l’utilisateur. Le besoinUtilisateur devient la tache courante et saméthode la methode courante.Les étapes suivantes consistent à spécifier l' objet tache courante. Pour cela, <strong>le</strong> système propose àl’utilisateur une interface, décrite dans la section suivante, qui présente <strong>le</strong>s rô<strong>le</strong>s de tache courante et <strong>le</strong>séléments de spécification de ces rô<strong>le</strong>s. La mise en place de cette interface au cours de la session se fait grâce à la<strong>le</strong>cture des rô<strong>le</strong>s de tache courante et à la <strong>le</strong>cture des éléments du domaine impliqués dans la définitiondes va<strong>le</strong>urs de ces rô<strong>le</strong>s. Spécifier un rô<strong>le</strong> revient à restreindre <strong>le</strong>s ensemb<strong>le</strong>s candidats de ces rô<strong>le</strong>s. Nousdétaillons éga<strong>le</strong>ment dans la section 3.3.2.2, comment ces mécanismes de spécification sont effectivementaccessib<strong>le</strong>s à l’utilisateur, c’est-à-dire par exemp<strong>le</strong> comment il lui est possib<strong>le</strong> de restreindre une extension, dechoisir une propriété à contraindre.Chaque fois que l’utilisateur fait une action de spécification sur cette interface, <strong>le</strong> système construit un objetspecificationCourante de type SpecificationRo<strong>le</strong> qui reflète la spécification faite.Ensuite, <strong>le</strong> système lit <strong>le</strong>s prémisses de chaque règ<strong>le</strong> règ<strong>le</strong>_j de la méthode methode courante. La<strong>le</strong>cture d’un prémisse se fait en lisant <strong>le</strong> nom de la méthode de test de la classe SpecificationRo<strong>le</strong> stockédans la variab<strong>le</strong> nomTest de la prémisse et en appliquant cette méthode sur la variab<strong>le</strong> parametre de laprémisse. Les différentes méthodes peuvent consister à tester <strong>le</strong> nom du rô<strong>le</strong> spécifié, et la type de spécificationd' ensemb<strong>le</strong> faite.Lorsque <strong>le</strong>s prémisses d’une règ<strong>le</strong> sont vérifiées, <strong>le</strong> système applique <strong>le</strong>s actions décrites dans <strong>le</strong>s variab<strong>le</strong>s decette même règ<strong>le</strong>.173


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Certaines variab<strong>le</strong>s permettent de modifier l'interface pour suggérer la spécification d'autres rô<strong>le</strong>s à l'utilisateur.Nous ne <strong>le</strong>s décrivons pas davantage ici.Si la variab<strong>le</strong> modifPlan est non nul<strong>le</strong> (modifPlan=i), <strong>le</strong> système modifie <strong>le</strong> plan de la methodecourante. Pour cela, il attribue à cette variab<strong>le</strong> la va<strong>le</strong>ur de sa sous-structure d'indice i. De plus, il réécrit <strong>le</strong>vocabulaire de cette sous-structure en lui ajoutant <strong>le</strong>s termes du vocabulaire de la sous-structure précédente quipointaient sur des éléments de cette sous-structure. Ceci est nécessaire pour que ce vocabulaire soit cohérentavec celui utilisé au niveau des règ<strong>le</strong>s de la méthode.Si la variab<strong>le</strong> propagSpecif est non nul<strong>le</strong>, <strong>le</strong> système sé<strong>le</strong>ctionne tour à tour chaque élémentPropagationSpecif de ce tab<strong>le</strong>au, soit PSi, donne à sa variab<strong>le</strong> specApropager la va<strong>le</strong>urspecificationCourante et applique PSi.L'application d'une propagationSpecif se fait de la façon suivante.Le système détermine <strong>le</strong>s rô<strong>le</strong>s qui doivent être spécifiés. Cela peut se faire de différentes façons :- Si <strong>le</strong>s variab<strong>le</strong>s nomIndirect et nomDansStructure de PSi sont nul<strong>le</strong>s, cela signifie que <strong>le</strong> rô<strong>le</strong> àspécifier est désigné directement par son nom dans tache courante et la va<strong>le</strong>ur de ce nom est lavariab<strong>le</strong> nomDansTache de PSi.- Si la variab<strong>le</strong> nomDansStructure de PSi est non nul<strong>le</strong>, cela signifie que <strong>le</strong> rô<strong>le</strong> à spécifier est désignépar son nom dans <strong>le</strong> vocabulaireStructure de la variab<strong>le</strong> plan de methode courante. Si <strong>le</strong>ssous-tâches du plan sont non nul<strong>le</strong>s, <strong>le</strong>s rô<strong>le</strong>s à spécifier sont désignés directement par <strong>le</strong> terme duvocabulaire. Si <strong>le</strong>s sous-structures sont non nul<strong>le</strong>s, <strong>le</strong> terme du vocabulaire désigne des noms dans <strong>le</strong>vocabulaire des sous-structures et <strong>le</strong> système doit faire une itération pour obtenir <strong>le</strong>s rô<strong>le</strong>s à spécifier.- Si la variab<strong>le</strong> nomIndirect est non nul<strong>le</strong>, <strong>le</strong> système effectue <strong>le</strong> même processus que celui effectué cidessusavec la variab<strong>le</strong> nomDansStructure pour obtenir <strong>le</strong>s rô<strong>le</strong>s désignés dans <strong>le</strong> plan parnomIndirect. Ces rô<strong>le</strong>s ne sont pas <strong>le</strong>s rô<strong>le</strong>s à spécifier mais ils sont associés aux tâches auxquel<strong>le</strong>s sontassociés <strong>le</strong>s rô<strong>le</strong>s à spécifier. Ces derniers sont obtenus en sé<strong>le</strong>ctionnant pour chacune de ces sous-tâches <strong>le</strong>rô<strong>le</strong> nommé nomDansTache (variab<strong>le</strong> de PSi) dans cette tâche.Le système construit alors autant d'objets SpecificationRo<strong>le</strong> qu'il y a de rô<strong>le</strong>s à spécifier, en affectant àchacune, comme variab<strong>le</strong> ro<strong>le</strong>, un des rô<strong>le</strong>s à spécifier.Le système construit ensuite la spécification d'ensemb<strong>le</strong> qui doit être appliquée à chacun de ces rô<strong>le</strong>s, c'est-à-direla va<strong>le</strong>ur des variab<strong>le</strong>s specification des objets SpecificationRo<strong>le</strong> qu'il a construits. Il construit unobjet SpecificationEnsemb<strong>le</strong> (soit SE) dont <strong>le</strong>s principa<strong>le</strong>s variab<strong>le</strong>s ont <strong>le</strong>s mêmes va<strong>le</strong>urs que cel<strong>le</strong>sde la spécification d'ensemb<strong>le</strong> initia<strong>le</strong> pour certaines, ou que des va<strong>le</strong>urs de variab<strong>le</strong>s spécifiques de PSi. Cettespécification d'ensemb<strong>le</strong> initia<strong>le</strong> est la variab<strong>le</strong> specification de la specApropager. Puis <strong>le</strong> systèmeprécise certaines variab<strong>le</strong>s de SE, selon plusieurs étapes :- Si la variab<strong>le</strong> booléenne paramVautChemin de PSi est vraie, cela signifie que la variab<strong>le</strong>parametrede SE doit être déduite de l'ensemb<strong>le</strong> initia<strong>le</strong>ment spécifié en suivant la variab<strong>le</strong>cheminBis de PSi. Par exemp<strong>le</strong>, si un ensemb<strong>le</strong> a été spécifié comme étant défini intensionnel<strong>le</strong>mentpar "une référence spatia<strong>le</strong> définie dans un système de référence administratif", et que <strong>le</strong> cheminBis vaut"définie dans" alors <strong>le</strong> parametre vaut l'élément "système de référence administratif". Ce processus neconsiste biensûr pas à faire des opérations sur des chaînes de caractères comme cet exemp<strong>le</strong> peut <strong>le</strong> laissercroire. Il s'agit plutôt de sé<strong>le</strong>ctionner par son nom une propriété d'un élément du domaine, de sé<strong>le</strong>ctionner lava<strong>le</strong>ur de cette propriété, de sé<strong>le</strong>ctionner l'élément définissant éventuel<strong>le</strong>ment intensionnel<strong>le</strong>ment cetensemb<strong>le</strong>, et d'itérer cela autant de fois qu'il y a de noms de propriété dans <strong>le</strong> cheminBis.174


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!- Si la variab<strong>le</strong> booléenne paramVautChoix de PSi est vraie alors la variab<strong>le</strong> parametre de SE vaut<strong>le</strong> choix définissant la spécification d'ensemb<strong>le</strong> initia<strong>le</strong>. Par exemp<strong>le</strong>, si un ensemb<strong>le</strong> a été spécifié commeétant défini intensionnel<strong>le</strong>ment par "une entité dont la va<strong>le</strong>ur est bâtiment", <strong>le</strong> choix est "bâtiment".- Le système utilise ensuite la variab<strong>le</strong> classParam de PSi pour donner <strong>le</strong> type souhaité auparametre.- Le système procède de façon similaire pour la variab<strong>le</strong> e<strong>le</strong>ment de SE, en fonction des booléense<strong>le</strong>mentVautChemin et e<strong>le</strong>mentVautChoix.Ensuite, <strong>le</strong> système affecte aux variab<strong>le</strong>s specification de chaque objet SpecificationRo<strong>le</strong> crééune variab<strong>le</strong> tacheAmont. Cette variab<strong>le</strong> vaut soit la tâche même associée au rô<strong>le</strong> à spécifier, soit une tâchedésignée par la variab<strong>le</strong> nomIndirectTacheAmont de PSi, qui à l'instar de la variab<strong>le</strong> nomIndirect,permet de désigner une tâche par un rô<strong>le</strong> -qui a pour nom nomIndirectTacheAmont dans <strong>le</strong> vocabulaire demethode courante- auquel<strong>le</strong> el<strong>le</strong> est associée.Puis, chaque objet SpecificationRo<strong>le</strong> est appliqué.L'application d'une SpecificationRo<strong>le</strong> consiste dans un premier temps à initialiser la variab<strong>le</strong> ro<strong>le</strong> si el<strong>le</strong>est nul<strong>le</strong>. Pour cela <strong>le</strong> système utilise <strong>le</strong>s variab<strong>le</strong>s nom et tache.Puis, si <strong>le</strong> rô<strong>le</strong> est non nul, <strong>le</strong> système applique la spécification d'ensemb<strong>le</strong> (variab<strong>le</strong> specification) auxcandidats du rô<strong>le</strong>.Si <strong>le</strong> rô<strong>le</strong> est nul, cela signifie qu'il n'existe pas encore dans la tâche et qu'il faut non pas <strong>le</strong> spécifier mais <strong>le</strong>créer. Dans ce cas <strong>le</strong> système crée un ensemb<strong>le</strong> reflétant la spécification -méthode spécifique de la classeSpecificationEnsemb<strong>le</strong>- et ajoute à la tâche, désignée par la variab<strong>le</strong> tache, un rô<strong>le</strong> nommé nom qui apour candidat cet ensemb<strong>le</strong>.Puis cette spécification appliquée devient specification courante, c'est-à-dire que <strong>le</strong> système étudie <strong>le</strong>srèg<strong>le</strong>s de la méthode de la tâche correspondant au rô<strong>le</strong> spécifié et déc<strong>le</strong>nche <strong>le</strong>s règ<strong>le</strong>s applicab<strong>le</strong>s (comme nousvenons de <strong>le</strong> décrire).Enfin, si <strong>le</strong> rô<strong>le</strong> a des rô<strong>le</strong>s aval, c'est-à-dire des rô<strong>le</strong>s dont <strong>le</strong>s variab<strong>le</strong>s candidats ont la même va<strong>le</strong>ur que sescandidats, alors <strong>le</strong> système crée un objet SpecificationRo<strong>le</strong> rendant compte de la spécification de chaquerô<strong>le</strong> aval et ces objets deviennent tour à tour specification courante.L'application d'une SpecificationEnsemb<strong>le</strong> peut consister à modifier un ensemb<strong>le</strong> existant ou à créer unnouvel ensemb<strong>le</strong>.Avant d'appliquer une SpecificationEnsemb<strong>le</strong>, <strong>le</strong> système réinitialise éventuel<strong>le</strong>ment <strong>le</strong>s variab<strong>le</strong>se<strong>le</strong>ment, parametre et ensemb<strong>le</strong> de cet objet de la façon suivante. Si <strong>le</strong>s variab<strong>le</strong>s paramDependant(resp e<strong>le</strong>mentDependant, ensemb<strong>le</strong>Dependant) et nomRo<strong>le</strong>Amont ne sont pas nul<strong>le</strong>s, <strong>le</strong> systèmesé<strong>le</strong>ctionne <strong>le</strong> rô<strong>le</strong> nommé nomRo<strong>le</strong>Amont de la tâche désignée par la variab<strong>le</strong> tacheAmont. Il définit alors<strong>le</strong> parametre (resp e<strong>le</strong>ment, ensemb<strong>le</strong>) comme un ensemb<strong>le</strong> qui vaut ces candidats.Ensuite, <strong>le</strong> système applique la spécification en fonction de la va<strong>le</strong>ur de la variab<strong>le</strong> type de l'objetSpecificationEnsemb<strong>le</strong>.S'il vaut "1", cela signifie que la spécification consiste à créer un ensemb<strong>le</strong>. Sa va<strong>le</strong>ur est donnée par la variab<strong>le</strong>ensemb<strong>le</strong>. Si la spécification consiste à modifier un ensemb<strong>le</strong> défini intensionnel<strong>le</strong>ment, cet ensemb<strong>le</strong> créé estla va<strong>le</strong>ur de la propriété désignée par la variab<strong>le</strong> chemin.S'il vaut "2", cela signifie que la spécification consiste à restreindre une extension en lui donnant une va<strong>le</strong>urindiquée. Cette extension peut éventuel<strong>le</strong>ment être la va<strong>le</strong>ur d'une propriété désignée par la variab<strong>le</strong> chemin.S'il vaut "3", cela signifie que la spécification fait appel à une méthode spécifique. C'est <strong>le</strong> cas généra<strong>le</strong>mentlorsque la spécification porte sur un ensemb<strong>le</strong> défini intensionnel<strong>le</strong>ment par l'élément du domaine "jeu dedonnées".175


:;?§?@:(9 A >BDCE:;


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.3.2.2 L’interfaceSwing est une bibliothèque java contenant des composants servant à construire des interfaces graphiques. Unegrande partie des traitements du système reposeront sur des objets swing permettant à l’utilisateur de visualiser<strong>le</strong>s concepts du modè<strong>le</strong> de tâches géographiques.Notons que l’utilisateur de notre système est presque directement en contact avec <strong>le</strong> modè<strong>le</strong> de la base deconnaissance de notre système. L’interface graphique affiche ces concepts plus qu’el<strong>le</strong> ne <strong>le</strong>s traduit dans unlangage intuitif. Nous ne cherchons pas à gérer cet aspect rigoureusement c’est-à-dire en mettant en place unvéritab<strong>le</strong> dialogue homme-machine faisant appel à des techniques comp<strong>le</strong>xes. Ceci est l’objet d’un travail dethèse actuel<strong>le</strong>ment en cours au COGIT et nous y revenons plus loin.Pour compenser un peu <strong>le</strong> manque de convivialité de notre système nous guidons l’utilisateur à tout momentdans <strong>le</strong> système par une fenêtre d’aide : cette fenêtre lui donne des définitions simp<strong>le</strong>s des concepts employés parl’interface, lui explique ce qui se passe quand il clique sur un bouton ou sé<strong>le</strong>ctionne un nœud d’un arbre.Présentation des objectifs géographiques connusL’interface de présentation des objectifs connus est une fenêtre permettant à l’utilisateur de naviguer dans unarbre des objectifs connus du système. Il s' agit du cadre "VUE SUR LA BASE DE CONNAISSANCES DUSYSTEME" Figure 83. Cet arbre est organisé en associant à chaque objectif des objectif qui <strong>le</strong> spécialisent. Ilpeut être redondant. De plus, l’utilisateur peut consulter une description de la tâche. Cette description possèdedes champs génériques et éga<strong>le</strong>ment des commentaires libres entrés dans la définition de la classe. Cette fenêtreest implémentée comme la classe AfficheObjectifs.Spécification de la tâche décrivant <strong>le</strong> besoin de l’utilisateurLa première étape de spécification est <strong>le</strong> choix d’une tâche connue du système et qui est proche du besoin del’utilisateur. Cela est fait à partir de la fenêtre d’ouverture de session, apparaissant , en suivant <strong>le</strong>s instructionsapparaissant dans <strong>le</strong> cadre orange « à partir de l’étape sé<strong>le</strong>ctionnée vous pouvez : ». Cette fenêtre estimplémentée dans la classe FenetreLancement.177


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Figure 83 : Fenêtre d’ouverture d’une session. [Figure 83 : Opening session window.]Lorsque l’utilisateur clique sur <strong>le</strong> bouton « démarrer », <strong>le</strong> système crée l’objet besoinUtilisateur.Il crée aussi une fenêtre présentant automatiquement <strong>le</strong>s rô<strong>le</strong>s que l’utilisateur peut spécifier. Une premièrefenêtre, Figure 84, donne la liste des rô<strong>le</strong>s de la tâche : entrées et sorties.Pour chaque rô<strong>le</strong>, l’utilisateur peut éditer une description de sa variab<strong>le</strong> candidats, c’est-à-dire l’ensemb<strong>le</strong>des éléments du domaine remplissant potentiel<strong>le</strong>ment ce rô<strong>le</strong>. Cette description est éga<strong>le</strong>ment construiteautomatiquement lors de la session. Sur la Figure 84, l’ensemb<strong>le</strong> édité est l’ensemb<strong>le</strong> correspondant au rô<strong>le</strong>« localisation recherchée ». Cette description de l’ensemb<strong>le</strong> candidats est associée à un commentaireexpliquant à l’utilisateur l’importance de ce rô<strong>le</strong> dans la détermination de la tâche, et suggérant éventuel<strong>le</strong>mentdes choix de spécification.178


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!L’utilisateur peut décider de spécifier un rô<strong>le</strong> plutôt qu’un autre en <strong>le</strong> sé<strong>le</strong>ctionnant dans la liste des rô<strong>le</strong>s. Il peutaussi se laisser guider par <strong>le</strong> système qui lui propose de spécifier <strong>le</strong>s rô<strong>le</strong>s dans un certain ordre. Notons quelorsque l’utilisateur spécifie un rô<strong>le</strong>, <strong>le</strong> système va éventuel<strong>le</strong>ment propager cette spécification en ajoutant unesuggestion de spécification d’un autre rô<strong>le</strong>, dans la fenêtre « informations pour vous aider à spécifier ».Figure 84 : Interface permettant à un utilisateur de spécifier la tâche représentant son besoin. [Figure 84 :Window allowing a user to specify the task representing his need.]La spécification d’un ensemb<strong>le</strong> peut se faire :179


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!- soit sur une extension, en sé<strong>le</strong>ctionnant une ou plusieurs va<strong>le</strong>urs parmi cel<strong>le</strong>s comprises dans cet ensemb<strong>le</strong>.Si la spécification ne peut porter que sur une va<strong>le</strong>ur alors <strong>le</strong>s autres va<strong>le</strong>urs ne sont plus sé<strong>le</strong>ctionnab<strong>le</strong>s parla suite.- soit sur intension, en spécifiant une propriété de l’élément générique de l’ensemb<strong>le</strong>.Les termes nécessaires à la spécification n’apparaissent pas tous sur la fenêtre de spécification du rô<strong>le</strong>. Lorsquel’utilisateur veut spécifier un élément comme une localisation dans laquel<strong>le</strong> est contenue la localisationrecherchée, ou une entité dont est proche l’entité qu’il veut référencer, une nouvel<strong>le</strong> fenêtre de dialogue s’ouvre.Figure 85 : Spécification de la localisation dans laquel<strong>le</strong> est incluse la localisation recherchée. Une fenêtre dedialogue s’ouvre pour poursuivre l’arbre de spécification.[Figure 85 : Specification of a localisation insidewhich is included the researched localisation. A dialog window opens to detail the process.]Le système édite <strong>le</strong>s spécifications faites en modifiant la description graphique de l’ensemb<strong>le</strong> : <strong>le</strong>s termesspécifiés apparaissent en b<strong>le</strong>u, <strong>le</strong>s termes qui ne peuvent plus être sé<strong>le</strong>ctionnés apparaissent en gris clair, commesur l’exemp<strong>le</strong> Figure 86.180


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Figure 86 : Fenêtre de spécification du rô<strong>le</strong> entité à localiser de la tâche de localisation. Les va<strong>le</strong>urs de l’entité« bâtiment » et « route » ne peuvent plus être sé<strong>le</strong>ctionnées car l’utilisateur a spécifié qu’il s’agissait d’uneentité administrative.[Figure 86 : Window for the specification of the ro<strong>le</strong> "entity to locate" of the localisationtask. Values "bâtiment" and "route" can no more be se<strong>le</strong>cted since the user has already specified this entity wasof type "entité administrative".]Présentation du planLa présentation du plan se fait sous forme textuel<strong>le</strong>, comme sur l’exemp<strong>le</strong> Figure 87.Ainsi, une tâche comp<strong>le</strong>xe figurant dans un plan n' est pas décrite au même niveau de détail que la tâchecomp<strong>le</strong>xe principa<strong>le</strong> (c' est-à-dire cel<strong>le</strong> représentant <strong>le</strong> besoin de l' utilisateur). Son plan doit être résumé commeune chaîne de caractères de façon similaire au mécanisme d' une tâche primitive.181


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Figure 87 : Fenêtre de présentation du plan d'une tâche spécifiée. [Figure 87 : Window displaying the plan ofthe specified task.]Le plan est rafraîchi lors de chaque spécification entrée par l’utilisateur. En particulier, des entrées peuvent êtreajoutées au corps d' un pas pour décrire des spécifications avancées, comme "localisation$0" sur l' exemp<strong>le</strong> Figure87. Les noms de ces rô<strong>le</strong>s, en général "entite$i", "localisation$i", sont attribués grâce à un compteur du plan quiincrémente la variab<strong>le</strong> i.L’évolution du plan est sauvegardée lorsque l’utilisateur sauvegarde l’état de spécification de sa tâche de sorteque lorsque l’utilisateur souhaite revenir à un état de spécification sauvegardé il retrouve <strong>le</strong>s spécifications desrô<strong>le</strong>s et <strong>le</strong>s spécifications du plan.182


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Navigation de l’utilisateur dans <strong>le</strong> processus de spécificationA tout moment du processus de spécification, l’utilisateur peut « prendre une photographie » des spécificationsen l’état. Une fenêtre du système contient la mémoire de ces « photographies ». L’intérêt de cette mémoire estqu’il est à tout moment possib<strong>le</strong> de revenir en arrière dans ces états des spécifications et de poursuivre laspécification à partir d’un état choisi dans <strong>le</strong>s états passés.Cette fenêtre, « vue sur votre session » est construire à partir d’une classe globa<strong>le</strong> Historique dont uneinstance est créée à chaque session. Cette instance décrit la session et <strong>le</strong>s « photographies » prises pendant cettesession de la façon suivante :- El<strong>le</strong> utilise des instances de la classe Etape pour décrire <strong>le</strong>s étapes de la session. Pour l’instant nousn’avons envisagé comme étapes que <strong>le</strong>s sauvegardes de spécifications.- El<strong>le</strong> associe à chaque objet Etape une instance de la classe Agenda décrivant ce que l’utilisateur peutfaire à partir de cette session. Pour l’instant l’agenda consiste toujours à relancer <strong>le</strong> processus despécification.Figure 88 : Fenêtre permettant à l’utilisateur de naviguer dans divers états de spécification de sonbesoin.[Figure 88 : Window supporting the user' s browsing of several states of specification of his need.]La relance du processus de spécification repose sur une copie de la TacheUtilisateur (et de toutes ses variab<strong>le</strong>s)faite lorsque l’utilisateur décide de sauvegarder l’état des spécifications. Ainsi, à l’étape est associée une tâchereflétant exactement l’état des spécifications et dont <strong>le</strong>s méthodes permettent de poursuivre <strong>le</strong> processus.3.3.2.3 Implémentation de la tâche de LocalisationCes structures ainsi ébauchées peuvent être exploitées de la façon suivante pour construire notre base deconnaissances. Les étapes de stockage d’une tâche géographique connue sont <strong>le</strong>s suivantes :1. Une première étape est de se demander si <strong>le</strong> plan de cette tâche est toujours <strong>le</strong> même et s’il est possib<strong>le</strong> de <strong>le</strong>construire simp<strong>le</strong>ment sans interaction comp<strong>le</strong>xe avec l’utilisateur. Dans ce cas il s’agit d’une instance de183


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!TachePrimitive avec pour mécanisme <strong>le</strong> plan en question. Sinon c’est une instance de TacheComp<strong>le</strong>xe, dont<strong>le</strong> plan a pour va<strong>le</strong>ur <strong>le</strong> plan en question.2. Dans <strong>le</strong> cas d’une tâche comp<strong>le</strong>xe, on crée une instance, Tache_i de TacheComp<strong>le</strong>xe.3. L’objectif de la tâche doit être énoncé de façon générique. Il est décrit à l’aide d’une variab<strong>le</strong> ou d’unestructure de variab<strong>le</strong>s. Des rô<strong>le</strong>s correspondant aux noms de ces variab<strong>le</strong>s sont créés, la sortie deTache_i est <strong>le</strong> tab<strong>le</strong>au de ces rô<strong>le</strong>s. Les Ensemb<strong>le</strong>s candidats de ces rô<strong>le</strong>s sont décrits, éventuel<strong>le</strong>menten ajoutant dans <strong>le</strong> domaine <strong>le</strong>s instances d’EltDomaine nécessaires.3.1. Le plan générique est décrit comme une décomposition (non nécessairement séquentiel<strong>le</strong>) en soustâches.3.2. Les variab<strong>le</strong>s du contexte amenant à spécifier <strong>le</strong> plan sont identifiées et spécifiées comme cela a été faitpour <strong>le</strong>s rô<strong>le</strong>s de sortie. Ces rô<strong>le</strong>s sont ensuite rangés dans <strong>le</strong> tab<strong>le</strong>au contro<strong>le</strong>.3.3. On écrit <strong>le</strong>s règ<strong>le</strong>s de spécification.4. Dans <strong>le</strong> cas d’une tâche primitive, on crée une instance de TachePrimitive et on procède de même pourspécifier ses divers rô<strong>le</strong>s.Nous détaillons dans <strong>le</strong>s Figure 89 et Figure 90 un cas d’utilisation du système s' appuyant sur la tâche delocalisation ainsi codée.184


=;E§: L@§@M=N>@1LGO9PQ=;DE§: 8RHGFG@DCSK FNK : CEM=TFU§U9FVQFG: CDCDFG@DE1C9>VIJKFS8D=£@AWGE9VX=?Y-Z>=TC9>V[K F?OF9CD=?H=N;DL@§@AFG: CCAFG@;D=\$]K;§VfY-CDb§CDEAced+=?HG=BVXJ8DJeVX=£@;D=?H: VX=;E\a=?CAbCDEAcd"=?HG=NVQJ8AJeVQ=£@;D=?H=(K FNK L;DFK : CDF§E§: L@[VX=;§C9\HG=(K` >9E§: K : CDF9EA=>V"CDJK =;E§: L@§@M=?Y-HGJC: ^@AJ=?U9FV_L@M=?^9JL^GVQFU=\=GER;K : m>=aC9>VfYiLo9\<strong>le</strong> Plan de TacheUtilisateur §Gª[¬+§ª®S¯D§£ḾĢª9­X§?¹G§T¨9º9»±³ ¯³ ±D®§ª§³ ¼´1¹G§(· ®ªA½±§² §(· §B­Q¾e· §?¿i§e´Dª9³ ªM»TÀ§£´1®§µD®GÁª_¨­[·¼±D®· ³ ¨D§e­AÁ ·"# $&%(')+*-, "!! ,+. , "!/10324 /65 . qHGF§EDC_=CE[VX=GCDE9VQ=e: @DEfF>9vsVQJ8AJeVQ=£@;D=CRHGJ8§: @§: =GCRHGFG@AC;DFG@DH:VX=;EwHG=GCRCAbCDEAcd"=CRHG=BVQJG8DJeVX=£@;D=?H:@A=BVQc^eK =?HG=(K FTd+JGE=£@;D=(K =NUK FG@_HG=C9U9J;:lz t =£@AE9VQJ=e{fJ;D=CDCDFG: VQ=N|fPQ=G>[H=?HGL@§@AJ=GCjy6CDL>9C§qC§d+=N|S: @DEMJG^GVQF9E§: L@fJGZA=£@DED>=K K =?HG=?UK >9C§: =G>VMCfPX=>vd"J;DFG@§:m>D=GwXjHGFG@DC[>@_C§VQC[>@§:l} tid+J;DFG@§: C9d"=N|RUVQLHe>§;E§: L@_H` >@A=BVXJ8DJeVX=£@;D=y6CDL>9C§qFK =?H: VQ=;DEA=£j§CDLGVQE§: =B~[OEA=£@>D=N|VXJ8DJeVX=£@;D=?CU9F§E9: FK =C9U9F§E9:VQ=;EA=Gw H:=BVQheK =?YiJK Jd"=£@AEDCRH=(K L;DFK : CDF§E9: L@R;DL@§@>9C9\H=aF;§V =CDE_CU9J;: 8: J£€ l =EAEA=TC9UJ;: 8: ;DF9E§: L@qBi‚§…M‚SŽ DƒMe…D"‰G‘Ž ‡Ž …Qe6‘eŠ„Œ ‡G9’G‚DƒR„…Q†„9‡9ˆ§‰T‡ŠS…Q‹eŒAB…Q”êŒ ?‘G(Œ ‡T+‰Gƒ•†‘G?‘GT‚D†Š‚§–—˜‚9„‰Ž šŽ T‡Œ †G…M‚“£Dƒ9…X‰eœf‰AG‚D‚D‡GŽ …Q?ž ŸXŠ[‘GT‘G†§A‰‚R‘G†Aƒ›G¡eƒM£A‚Ž †[…QD†Š¢§…QsŒ ‡NŒ †D‡Œ Ž ‚D‡§ƒ§Ž †_‘G‰‚Ž ˆA‰N„9‡…[Œ ‡Œ¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "!7+898: ;§@A=B: @DCDEAFG@;D=?H=FenetreLancementSYSTEMEp @DCDEAFG@;: F§E9: L@_HG=FenetreLancement` LO9PQ=E7+UU9=KkTd+JGE=TC9>V[K =BOL>EAL@_Y-HGJed"FVDVQ=eVA\7+898: ;§@M=s: @ACDEAFG@;D=ld’InterfaceTachefonction de TacheUtilisateur;K : m>=TC9>VfY-CU9J;: 8§: =eV[K FS;DFVQF;EAJeV: CDE9: m>D=N;§@M=?CDE9VA>§;DE>VQ=?H=qF;§vBCDL>C9y-EAg;§::a =?CAbCDEAced+=TF898: ;9


<strong>le</strong> Plan de TacheUtilisateur 8M=N@+8=DTF>8£OHUM=VBW8:XM8Y9VZV[IL FL I>D§=§L \O1XM8(S D==VL =H[Y`8£O1D§P>DMODS L 9>8ABDV==D§=§L \MOQXM8(S b 8£OR87§8:9=


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!3.3.3.1 Apports à la résolution de la problématique initia<strong>le</strong>Pour évaluer notre approche, nous reprenons <strong>le</strong>s 5 sous-objectifs identifiés lors de la définition de laproblématique.Contribution à O1 (<strong>le</strong> transfert de connaissances)Rappelons que nous avons axé notre démarche sur ce sous-objectif O1. En principe, <strong>le</strong> service d'aide possède <strong>le</strong>sconnaissances permettant de désigner à un utilisateur l'existence de ressources, de décrire <strong>le</strong>ur contenu et defournir <strong>le</strong>ur mode d'emploi.Cette contribution doit être modulée en fonction de l'utilisateur. Un utilisateur peu familiarisé avec <strong>le</strong> monde desBDG et SIG aura besoin de cette aide optima<strong>le</strong> alors qu'un utilisateur plus expert n'aura besoin que de ladésignation de l'existence des ressources et de <strong>le</strong>ur contenu.Contribution à O2 (l'aide à la sé<strong>le</strong>ction d'information uti<strong>le</strong>)L'aide à la sé<strong>le</strong>ction d'information uti<strong>le</strong> est assurée par <strong>le</strong>s mécanismes de spécification des rô<strong>le</strong>s de la tâchedécrivant <strong>le</strong> besoin de l'utilisateur.Dans <strong>le</strong> cas de l'information géographique, il nous semb<strong>le</strong> qu'une aide à la sé<strong>le</strong>ction doit consister non pas tant àdiscriminer de l'information uti<strong>le</strong> parmi une abondance d'information mais plutôt à proposer plusieurs solutions àl'utilisateur en lui décrivant <strong>le</strong>s termes d'un compromis à faire. Par exemp<strong>le</strong> <strong>le</strong> système peut lui proposer commesé<strong>le</strong>ction : "pour calcu<strong>le</strong>r une réponse à la question qui vous préoccupe, vous avez <strong>le</strong> choix entre plusieurs plansde dérivation de données. Tel plan est peu coûteux, tel plan vous assure une réponse la plus précise possib<strong>le</strong>, telplan vous permet d'utiliser des données provenant du même producteur et donc d'éviter des mauvaises surprises(d'incompatibilités non prévues), tel plan vous permet d'utiliser un seul outil logiciel…". Ce principe n'a pas étéexploré dans notre thèse.Contribution à O3 (la traduction d'une sé<strong>le</strong>ction d'information uti<strong>le</strong> en unesé<strong>le</strong>ction de ressources)La fonctionnalité O3 est assurée par <strong>le</strong>s mécanismes de propagation de la spécification des rô<strong>le</strong>s à laspécification du plan de la tâche décrivant <strong>le</strong> besoin de l'utilisateur. Cette fonctionnalité est en principeextrêmement avancée. Mais el<strong>le</strong> est comp<strong>le</strong>xe à réaliser. Effectivement, el<strong>le</strong> n'est pas mise en place une fois pourtoute mais doit être précisée pour chaque nouvel<strong>le</strong> tâche. Notre apport consiste à fournir des structuresgénériques pour expliciter <strong>le</strong>s connaissances nécessaires à cette fonction pour chaque tâche.Contribution à O4 (la fédération de ressources)La fonctionnalité O4 est assurée de plusieurs façons.Une requête est confrontée à l'ensemb<strong>le</strong> des ressources et non à chaque ressource. Ceci est possib<strong>le</strong> car <strong>le</strong>sdiverses ressources sont décrites avec un même langage, celui des métadonnées.Par ail<strong>le</strong>urs, plusieurs ressources peuvent être exploitées de concert. Il s'agit là d'une fédération optima<strong>le</strong> desressources. Cela est possib<strong>le</strong> grâce à des tâches primitives décrivant comme obtenir un jeu de données unifié àl'aide de divers jeux. Notons que cette fonctionnalité n'a de sens que si la fédération de ressources ne se limitepas à une fédération au niveau des métadonnées (i.e. au niveau de l'accès) mais consiste aussi en une fédérationau niveau des données (i.e. au niveau de la manipulation).187


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Contribution à O5 (s'adresser à divers utilisateurs)La fonctionnalité O5 n'a pas été suffisamment explorée. El<strong>le</strong> dépend de plusieurs éléments.El<strong>le</strong> dépend de l'interface de spécification du besoin de l'utilisateur. Cette interface doit être plus convivia<strong>le</strong> etpermettre un vrai dialogue entre <strong>le</strong> système et un utilisateur.El<strong>le</strong> dépend éga<strong>le</strong>ment du domaine, c'est-à-dire des connaissances applicatives que possède <strong>le</strong> système. Il estimportant d'y intégrer des ontologies de domaine applicatifs.3.3.3.2 Evaluation du prototypeLe prototype a permis de définir des objets pour représenter <strong>le</strong>s éléments tâches, plans, rô<strong>le</strong>s, éléments dudomaine. Il a proposé aussi une représentation du mécanisme de spécification de ce modè<strong>le</strong> pour qu'il puisses'adapter à des besoins particuliers d'utilisateurs.Notons cependant des limites de ce prototype.L'interface du système permettant à un utilisateur de spécifier son besoin n'est pas suffisamment intuitive. Il estnécessaire d'ajouter à ce système une interface homme-machine plus sophistiquée.La f<strong>le</strong>xibilité de la base de connaissances du système ne peut être assurée que si on dipose d'une interfaced'enrichissement de cette base. Pour l'instant nous avons proposé une méthode assez généra<strong>le</strong> d'analyse desmanipulations de l'information géographique connues pour <strong>le</strong>s décrire à l'aide des éléments de notre modè<strong>le</strong>. I<strong>le</strong>st nécessaire que l'intégration de nouvel<strong>le</strong>s connaissances dans <strong>le</strong> modè<strong>le</strong> s'appuie sur <strong>le</strong>s connaissancesexistantes. Pour cela il faut construire une interface d'édition de la base de connaissances du système indiquant<strong>le</strong>s possibilités de réutilisation des connaissances existantes dans <strong>le</strong>s contextes suivants : intégration de nouveauxconcepts applicatifs, de nouveaux jeux de données, intégration de nouveaux traitements sur <strong>le</strong>s donnéesdisponib<strong>le</strong>s, intégration de nouvel<strong>le</strong>s méthodes pour des tâches déjà représentées.Enfin, nous nous sommes concentrés dans ce prototype sur la spécification d'un besoin de connaissancesgéographiques. Il est éga<strong>le</strong>ment nécessaire de permettre à un utilisateur de spécifier un besoin de traitement ouun besoin de données c'est-à-dire de parcourir non plus la base d'objectifs connus, mais plutôt la base detraitements connus du systèmes (tâches primitives), et la base de jeux de données disponib<strong>le</strong>s.Enfin, il est nécessaire de confronter <strong>le</strong> besoin de ressources, traduit en intension de ressources par <strong>le</strong> système,aux ressources effectivement disponib<strong>le</strong>s pour déterminer quel<strong>le</strong>s ressources peuvent effectivement remplir <strong>le</strong>srô<strong>le</strong>s voulus dans l ’application, comme décrit Figure 91, c’est-à-dire permettre de monter pratiquementl’application. Nous n'avons pu mettre en place cette fonctionnalité faute de posséder suffisamment demétadonnées. Plusieurs travaux en cours à l'IGN visent à mettre en place des bases de métadonnées et <strong>le</strong>ursrésultats devront être exploités dans notre système.188


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¨¥©¢¥¤¤©¡¡£¢¥¤§¦ ¨¥©£¥ "!Intensions des jeux dedonnées UTILES+Intensions des jeux dedonnées DISPONIBLESDescription des ressourcesUTILESetDISPONIBLESFigure 91 : Etape ultime : la reconnaissance de ressources disponib<strong>le</strong>s en réponse à une intension deressources. [Figure 91 : Ultimate stage : to reckon availab<strong>le</strong> resources answering a need specified as requiredresources.]189


"# $&%(')+*-, "!! ,+. , "!/10324 /65 . ¡£¢¥¤§¦ ¨¥©£ ¨¥©¢¥¤¤©¡¥ "!190


¡£¢¥¤§¦©¨§¡£¢CONCLUSION ET PERSPECTIVESLes données géographiques sont des ressources en information extrêmement riches qui peuvent répondre à desbesoins variés grâce à diverses techniques de manipulation de ces données et de nombreux outils. L’accèsd’utilisateurs à ces données est diffici<strong>le</strong>, principa<strong>le</strong>ment pour <strong>le</strong>s raisons suivantes :- Il existe de nombreuses BDG et <strong>le</strong>s utilisateurs ne connaissent pas toujours <strong>le</strong>ur existence.- Les métadonnées, qui peuvent être utilisées pour cataloguer <strong>le</strong>s BDG, ne sont pas destinées aux utilisateurs.El<strong>le</strong>s restent dédiées au transfert de données ou à la gestion de données par un producteur.- L’interprétation de la représentation utilisées dans une BDG est comp<strong>le</strong>xe. Il n’existe pas de représentationuniversel<strong>le</strong> de l’espace géographique. Les représentations utilisées pour construire <strong>le</strong>s BDG sont éloignéesdes concepts d’utilisateurs. Ces représentations sont souvent guidées par des modè<strong>le</strong>s cartographiques, quine nécessitent pas d’expliciter des relations spatia<strong>le</strong>s entre objets géographiques, alors que <strong>le</strong>s raisonnementsd’utilisateurs s’appuient essentiel<strong>le</strong>ment sur de tel<strong>le</strong>s relations. Par ail<strong>le</strong>urs, <strong>le</strong>s besoins de représenter lanotion de situation dans l’espace conduisent souvent à utiliser des techniques mathématiques peu accessib<strong>le</strong>spour informatiser des formes géométriques.- L’exploitation de données géographiques est éga<strong>le</strong>ment comp<strong>le</strong>xe et requiert une expertise spécifique,comme connaître <strong>le</strong>s outils disponib<strong>le</strong>s, connaître <strong>le</strong>s relations d’interopérabilité entre <strong>le</strong>s nombreux formatsutilisés dans <strong>le</strong>s BDG et <strong>le</strong>s traitements, savoir interpréter <strong>le</strong>s résultats d’un traitement.Le travail présenté dans ce rapport traite ce problème en se concentrant sur ses aspects liés à la gestion de laconnaissance.Pour détail<strong>le</strong>r ce problème, nous avons étudié la notion généra<strong>le</strong> d’« accès à des connaissances ». Un premierapport de ce travail est de proposer une formalisation de la problématique très généra<strong>le</strong> de l’accès à desressources en information, non nécessairement géographique. Cette formalisation permet de caractériser lanotion d’aide à l’accès par plusieurs objectifs décrits Figure 21 page 55 :- O1 : construire l’espace des transferts, c’est-à-dire l’espace des connaissances dérivab<strong>le</strong>s des ressources,- O2 : faire une sé<strong>le</strong>ction d’information uti<strong>le</strong>, c’est-à-dire reformu<strong>le</strong>r <strong>le</strong> besoin de l’utilisateur en un besoind’information dérivée des ressources,- O3 : traduire une sé<strong>le</strong>ction d’information uti<strong>le</strong> en une sé<strong>le</strong>ction de lots à acquérir, c’est-à-dire propager unerequête en termes d’information dérivab<strong>le</strong> en une requête en termes de portions de ressources,191


¡£¢¥¤§¦©¨§¡£¢- O4 : fédérer des ressources, c’est-à-dire proposer à l’utilisateur un mode d’accès à diverses ressourcescomme s’il s’agissait d’une seu<strong>le</strong> ressource,- O5 : s’adresser à divers utilisateurs, c‘est-à-dire prendre en compte une diversité de besoins et d’aptitudes àexprimer ces besoins.Cette décomposition en sous-objectifs permet de situer, <strong>le</strong>s unes par rapport aux autres, dans l’état de l’art,diverses démarches qui doivent être prises en compte dans notre travail, soit parce qu’el<strong>le</strong>s prennent place dansun autre domaine d’information mais qu’el<strong>le</strong>s mettent en œuvre une technique efficace méritant d’être appliquéeau cas de l’information géographique (section 2.1), soit parce qu’el<strong>le</strong>s contribuent effectivement à l’accèsd’utilisateurs à l’information géographique (section 2.2).Un premier vo<strong>le</strong>t de cet état de l’art (section 2.1) évalue <strong>le</strong>s techniques actuel<strong>le</strong>s pour aider l’accès tel que nousl’avons défini. Nous nous sommes concentrés tout particulièrement sur la contribution au sous-objectif O1 car unproblème essentiel est selon nous l’écart entre <strong>le</strong>s expressions possib<strong>le</strong>s de besoins, et <strong>le</strong>s descriptions deréponses à ces besoins construites avec des données géographiques. Ce premier vo<strong>le</strong>t classe <strong>le</strong>s démarches selon<strong>le</strong>ur contribution à O1 : démarches d’aide à l’accès aux données, d’aide à l’accès aux informations et d’aide àl’accès aux connaissances. Il évalue éga<strong>le</strong>ment la contribution de chaque démarche aux autres objectifs.Les techniques <strong>le</strong>s plus complètes sont <strong>le</strong>s techniques d’aide au raisonnement formel mises en place par lacommunauté d’acquisition des connaissances. Dans notre contexte, ces techniques doivent être appliquées auraisonnement constituant l’accès : l’exploration, focalisée par <strong>le</strong> contexte de l’utilisateur, des connaissances qu’ilpourrait obtenir à partir de lots pouvant être extraits des ressources. L’apport des techniques d’aide auraisonnement formel est doub<strong>le</strong> :- D’une part, el<strong>le</strong>s sont utilisées pour construire un modè<strong>le</strong> de connaissances dans <strong>le</strong>quel ce raisonnementglobal peut être mené. Ce modè<strong>le</strong> consiste en une description des ressources, des besoins, et des mécanismespermettant de relier un besoin à des ressources lui répondant.- D’autre part, el<strong>le</strong>s permettent de répartir ce raisonnement global entre plusieurs acteurs, en <strong>le</strong>s faisanttravail<strong>le</strong>r sur un même modè<strong>le</strong>. Comme il est possib<strong>le</strong> de faire raisonner formel<strong>le</strong>ment un composantimplémenté, un de ces acteurs peut être un tel composant. Donc <strong>le</strong>s techniques d’aide au raisonnementformel aident un utilisateur à raisonner en <strong>le</strong> soulageant d’une partie du raisonnement global constituant sonaccès.Un principe clé de formalisation consiste à distinguer, au sein du modè<strong>le</strong> utilisé, <strong>le</strong>s connaissances qui décriventun domaine, ou QUOI, et cel<strong>le</strong>s qui décrivent sa manipulation, ou COMMENT. Ce principe a deux propriétésintéressantes dans <strong>le</strong> contexte de l' aide à l' accès, si on l' applique en construisant un tel modè<strong>le</strong> pour décrire desdonnées géographiques :- C' est une méthode pour séparer des connaissances de contenu de <strong>le</strong>urs divers modes d’emploi. Cela assured' aider l' accès à un jeu de données sans se restreindre à un mode d' emploi donné de ce jeu. Cela permet ausside réutiliser un même mode d' emploi sur des contenus différents. Tout cela concoure à permettre à unutilisateur d’exploiter <strong>le</strong>s données avec <strong>le</strong> mode d’emploi adapté à son besoin propre.- La description d' un COMMENT global comporte <strong>le</strong>s connaissances de réponses aux question pourquoi,comment et avec quoi. Ces connaissances permettent d' expliciter l' expression d' un besoin (grâce aupourquoi) et de la relier (grâce au comment) à une désignation de ressources uti<strong>le</strong>s pour y répondre (grâce auavec quoi).Un deuxième vo<strong>le</strong>t évalue l’application de ce principe dans <strong>le</strong> domaine de l' information géographique c' est-à-direl' existence d' un tel modè<strong>le</strong> décrivant <strong>le</strong>s données et décrivant <strong>le</strong>urs manipulations possib<strong>le</strong>s.La plupart des démarches portent sur la formalisation du QUOI, en intégrant une part de COMMENT pour guiderla modélisation. Ces formalisations du QUOI ne sont pas unifiées.192


¡£¢¥¤§¦©¨§¡£¢La formalisation effective du COMMENT ne répond principa<strong>le</strong>ment qu'aux besoins d'implémentation destraitements sur des données géographiques ou interopérabilité entre traitements et données. El<strong>le</strong> concerne <strong>le</strong> avecquoi. Il n’y a par contre pas de véritab<strong>le</strong> formalisation des pourquoi et comment, c’est-à-dire :- l’énoncé de problèmes sous forme d’objectifs à atteindre en des termes proches des concepts utilisateurs,- la description de méthodes pour résoudre ces problèmes (atteindre ces objectifs).Cet état de l'art nous permet d'envisager une contribution qui consiste à mettre en œuvre <strong>le</strong> principe demodélisation énoncé à l'issue du premier vo<strong>le</strong>t section 2.1, en nous concentrant tout particulièrement sur <strong>le</strong>slacunes du domaine de l'information géographique mises en évidence dans <strong>le</strong> second vo<strong>le</strong>t section 2.2.Cette contribution est concrétisée par la construction d’un modè<strong>le</strong> spécifique, intégrant <strong>le</strong>s notions de tâches,méthodes et rô<strong>le</strong>s, pour modéliser de façon distincte ce qu’est l’information géographique, <strong>le</strong> QUOI, et <strong>le</strong>sraisonnements qui s’appuient sur cette information, <strong>le</strong> COMMENT. Le principe de cette contribution est dedécrire des gabarits d'utilisations de données géographiques et de permettre à un utilisateur de savoir commentrépondre à son besoin d'information géographique en adaptant ces gabarits à son besoin et contexte particuliers.Ce modè<strong>le</strong> est présenté section 3.1.2. Il est formalisé par la définition d'une grammaire Backus Naur Formsection 3.1.2.5.Les apports de ce modè<strong>le</strong> sont multip<strong>le</strong>s :- Il permet de modéliser des connaissances jusqu'ici peu formalisées comme <strong>le</strong> pourquoi et <strong>le</strong> comment. Cesconnaissances portent sur la description de besoins d'information et de méthodes de dérivation de tel<strong>le</strong>sinformations.- Il permet de modéliser <strong>le</strong> lien entre <strong>le</strong>s diverses catégories de connaissances. Ce lien est essentiel dans <strong>le</strong>transfert de connaissances de données vers un utilisateur.- Il permet enfin de modéliser des connaissances de spécification permettant l'expression d'un besoinparticulier et sa traduction en une sé<strong>le</strong>ction de ressources, c'est-à-dire des catégories de connaissancesintervenant précisément dans l'accès. Ces connaissances portent sur la spécification du besoin et sur laspécification de la méthode de réponse à ce besoin.Ce modè<strong>le</strong> est associé à un système de résolution coopérative de problème qui opérationnalise <strong>le</strong>s mécanismesd'adaptation des gabarits au problème particulier d'un utilisateur. Ce système est présenté section 3.1.3.Afin de démontrer la capacité du modè<strong>le</strong> à représenter de façon distincte et reliée des connaissances appartenantau QUOI et des connaissances appartenant au COMMENT, il a été utilisé pour modéliser des raisonnementsgéographiques particuliers en section 3.2.Comme <strong>le</strong> modè<strong>le</strong> de tâches géographiques ne porte pas sur une tâche spécifique mais sur un domainespécifique, nous avons dans un premier temps exprimé <strong>le</strong>s spécificités du domaine, section 3.2.1. Le domaine dumodè<strong>le</strong> est la partie de notre modè<strong>le</strong> décrivant <strong>le</strong> QUOI géographique. En tant que tel, il doit rendre compte de ladiversité des représentations qui sont faites de ce QUOI, et des facteurs permettant de comprendre unereprésentation. Un élément important est de représenter <strong>le</strong> sujet de l’activité conduisant à construire lareprésentation.Nous avons ensuite modélisé plusieurs raisonnements géographiques.- La modélisation de la tâche d’appariement de jeux de données, section 3.2.3, a permis de montrer en quoi <strong>le</strong>modè<strong>le</strong> de tâches permettait de décrire un processus bien connu [Lemarié 96][Badard 00][Bel Hadj Ali 01].- La tâche de localisation est une tâche extrêmement généra<strong>le</strong> pour laquel<strong>le</strong> il n’existait pas de méthodegénérique. Le terme « localisation » peut renvoyer à une variété de besoins et d’outils utilisés pour répondreà ces besoins. Nous proposons un modè<strong>le</strong> de tâche de localisation qui se spécifie pour couvrir une diversitéde cas, section 3.2.4.193


¡£¢¥¤§¦©¨§¡£¢- La modélisation de la tâche de détermination d’une navigation est axée sur l’expression du besoin. Cettetâche, tel<strong>le</strong> que modélisée 3.2.5, permet de spécifier de façon avancée un besoin de détermination denavigation.La modélisation d’une tâche implique de distinguer, dans <strong>le</strong> vocabulaire utilisé dans un raisonnementgéographique, ce qui renvoie à une structure dédiée à une manipulation et ce qui renvoie à la nature del’information géographique. Les structures construites dans <strong>le</strong> cadre de raisonnement appartiennent auCOMMENT et sont modélisées sous forme de rô<strong>le</strong>s. Etablir cette distinction est une difficulté essentiel<strong>le</strong> de cettemodélisation et cependant un point clé pour <strong>le</strong> bon fonctionnement du modè<strong>le</strong>. Le QUOI géographique doitpouvoir se prêter à tous <strong>le</strong>s raisonnements qui peuvent être menés dessus, c’est-à-dire qu’il doit pouvoirs’intégrer dans diverses structures. Pour cela, il est important de représenter <strong>le</strong>s connaissances « de valuation desrô<strong>le</strong>s », c’est-à-dire <strong>le</strong>s connaissances désignant quel élément du domaine tient lieu, dans <strong>le</strong> raisonnementcourant, de la structure décrite par <strong>le</strong> rô<strong>le</strong>. Nous avons indiqué au cas par cas, au cours de la section 3.2, quel<strong>le</strong>spouvaient être ces connaissances de valuation des rô<strong>le</strong>s et <strong>le</strong>ur mode de représentation dans <strong>le</strong> COMMENT. Maisnous n’avons pas formalisé en détail de tel<strong>le</strong>s connaissances. De fait, el<strong>le</strong>s sont liées aux connaissances despécification, qui ont été décrites mais qui n’ont pas été formalisées de façon poussée, par manque de temps.Le modè<strong>le</strong> et la base de connaissances associée sont exploités par un système expert pour aider un utilisateur àexplorer <strong>le</strong>s connaissances, dérivab<strong>le</strong>s de données géographiques disponib<strong>le</strong>s et pertinentes dans son contexte.Un prototype de ce système expert est proposé en section 3.3. La difficulté essentiel<strong>le</strong> de cette étape a été deproposer une représentation implémentab<strong>le</strong> de notre modè<strong>le</strong>. Nous avons choisi <strong>le</strong> langage d’implémentationorienté-objet java pour cette étape. Les raisons de ce choix sont que <strong>le</strong> modè<strong>le</strong> orienté-objet est, parmi <strong>le</strong>slangages implémentab<strong>le</strong>s, <strong>le</strong> plus proche des raisonnements de l’homme et que <strong>le</strong> langage java est un langagesimp<strong>le</strong> à utiliser.Une attention particulière a été apportée à la définition de structures génériques. La description d' une tâchegéographique particulière s' appuie uniquement sur la spécification de variab<strong>le</strong>s et non sur l' écriture deconnaissances procédura<strong>le</strong>s spécifiques.Cette représentation est instanciée sur l’exemp<strong>le</strong> de la tâche de localisation. Ce prototype montre qu’il estpossib<strong>le</strong> de stocker sous forme d’objets <strong>le</strong>s éléments du modè<strong>le</strong> de tâches géographiques de façon à ce qu’ilspuissent être manipulés automatiquement pour construire la réponse à un besoin d’utilisateur en spécifiant unetâche géographique.En définitive, <strong>le</strong> travail présenté dans ce rapport initie une démarche. Il apporte une vue d’ensemb<strong>le</strong> sur laproblématique traitée, situe une contribution origina<strong>le</strong> et démontre la faisabilité de cette approche. Plusieursaspects de ce travail demandent à être poursuivis : la modélisation des tâches de localisation et détermination denavigation et l’implémentation de ces tâches dans <strong>le</strong> prototype. Par ail<strong>le</strong>urs, nous envisageons de nombreusespistes pour compléter et étendre cette contribution.Une première piste concerne l' interface utilisateur de ce prototype, dans un contexte d' aide à l' accès. Nousn’avons pu confronter des utilisateurs à notre prototype qui ne possède pas d’interface de dialogue hommemachineet est en l’état peu intuitif. Il est nécessaire de construire une interface de dialogue. Pour cela, nousexploiterons entre autres <strong>le</strong>s résultats du travail de thèse de Frédéric Hubert au COGIT [Hubert 01a] [Hubert01b]. Les utilisateurs auxquels nous nous adresserons dans un premier temps sont des utilisateurs experts eninformation géographique travaillant à l’IGN pour produire des données.Une autre piste est l' enrichissement de la base de connaissances de ce prototype. El<strong>le</strong> se décline en trois axes :- <strong>le</strong>s modalités d' édition de cette base pour y intégrer de nouvel<strong>le</strong>s connaissances,- l' identification des BD qui peuvent être intégrées dans la base de connaissance,- la modélisation de connaissances n' ayant pas encore fait l' objet d' une formalisation.194


¡£¢¥¤§¦©¨§¡£¢Pour ce qui est du premier axe, il est important de formaliser <strong>le</strong> processus d’intégration de nouveaux élémentsdans la base de connaissances du système, voire d’automatiser une partie de ce processus. Cette intégration neconsiste pas uniquement à décrire avec <strong>le</strong>s éléments génériques du modè<strong>le</strong> une nouvel<strong>le</strong> connaissance (données,outil, méthode, objectif). Cela inclut aussi la propagation de l’enrichissement des connaissances ontologiquesaux connaissances de résolution de problèmes et vice versa. Lorsqu’une nouvel<strong>le</strong> ressource est décrite, il fautrelier cette description aux exploitations qui peuvent être faites de la ressource. Lorsqu’une nouvel<strong>le</strong> méthode estdécrite, il faut la relier aux opérations et aux données qu’el<strong>le</strong> permet de manipu<strong>le</strong>r.Pour ce qui est du deuxième axe, l' identification des BD qui peuvent être intégrées dans <strong>le</strong> prototype, il s' agitessentiel<strong>le</strong>ment de bases de métadonnées et de bases applicatives.Il existe actuel<strong>le</strong>ment peu de bases de métadonnées. Un projet de développement portant sur la diffusion desdonnées à l’IGN a débuté en juin 2001 et une première étape consiste à acquérir, éventuel<strong>le</strong>ment construire, desmétadonnées [Cébelieu 01].Il est éga<strong>le</strong>ment important d’intégrer dans <strong>le</strong> prototype des connaissances uti<strong>le</strong>s pour l' expression du besoin et ducontexte de l' utilisation. De tel<strong>le</strong>s connaissances sont par exemp<strong>le</strong> des nomenclatures métiers. Cela peut êtreaussi des connaissances d' interprétation permettant à un utilisateur de s' exprimer dans des concepts plus familiersque ceux utilisés formel<strong>le</strong>ment pour décrire <strong>le</strong>s ressources. Par exemp<strong>le</strong>, la désignation d' un lieu par l' utilisateurpeut se faire grâce à des indexes géographiques (fichiers de noms de lieux associés à <strong>le</strong>urs coordonnéesgéographiques), grâce à une base de données administratives, ou grâce à une BDG de très petite échel<strong>le</strong> qui peutservir d' index géographique en associant des coordonnées à des objets géographiques de référence comme desf<strong>le</strong>uves, des forêts ou des sites touristiques connus.Le dernier axe, la modélisation de nouvel<strong>le</strong>s connaissances, est une perspective très riche.Ces nouvel<strong>le</strong>s connaissances sont par exemp<strong>le</strong> des métadonnées d' un autre type que cel<strong>le</strong>s actuel<strong>le</strong>ment définiesdans <strong>le</strong>s standards. Il s' agit de connaissances sur <strong>le</strong>s BDG nécessaires à la valuation des rô<strong>le</strong>s.Ce sont aussi la description de traitements SIG. Un format pertinent pour cette description est en train d' émerger,il s' agit de formats de description de services basés sur XML tels WSDL. Il sera donc uti<strong>le</strong> de traduire notregrammaire BNF dans un XMLSchema et de décrire plus précisément <strong>le</strong>s éléments "mécanismes" dans cenouveau formalisme en intégrant WSDL.Une autre perspective intéressante est de modéliser des tâches de généralisation. Cela permet de contribuer à unprocessus de capitalisation de connaissances aussi diffici<strong>le</strong> à mettre en place que crucial. Cette problématique dela capitalisation de connaissances est éga<strong>le</strong>ment importante dans un contexte de production. A l' IGN, cettecapitalisation ne concerne pas uniquement des tâches de haut niveau tel<strong>le</strong>s que cel<strong>le</strong>s figurant sur la Figure 4page 24. Il existe à l' IGN de nombreuses données géographiques et algorithmes qui correspondent à des étapesintermédiaires de processus de production. Ces connaissances sont développées au cas par cas, de façonindépendante, mais pourraient être réutilisées dans d' autres contextes si <strong>le</strong>s utilisateurs connaissaient <strong>le</strong>urexistence. Il est donc pertinent d' indexer ces méthodes et données intermédiaires pour permettre <strong>le</strong>ur réutilisationdans un contexte différent de celui où el<strong>le</strong>s ont été produites.Une autre perspective extrêmement intéressante à nos yeux de ce travail, mais à long terme, est d’intégrerdans <strong>le</strong> modè<strong>le</strong> <strong>le</strong>s structures mises en place par <strong>le</strong>s géographes pour analyser l’action de l’homme dansl’espace géographique. Un utilisateur ayant besoin de ressources en information géographique pourraitaccéder à la connaissance des modè<strong>le</strong>s des géographes. Actuel<strong>le</strong>ment il n’existe pas de démarche dans cesens. Pourtant cela permettrait de rendre <strong>le</strong>s utilisateurs de données géographiques mieux informés de <strong>le</strong>urintervention dans l’espace géographique.Pour conclure ce mémoire, rappelons que cette thèse rend compte d’un cas d’application de principesprovenant de l’acquisition des connaissances. Il a été nécessaire de reformu<strong>le</strong>r en détail la problématiquetraitée et <strong>le</strong>s apports de l’acquisition des connaissances dans ce contexte pour deux raisons :195


¡£¢¥¤§¦©¨§¡£¢- La démarche, de par <strong>le</strong> sujet même et <strong>le</strong> domaine technique, est nouvel<strong>le</strong> dans <strong>le</strong> laboratoire où s’estdéroulée la thèse et il était important de définir une approche pertinente.- L’acquisition des connaissances est un domaine extrêmement comp<strong>le</strong>xe qu’il n’était pas envisageab<strong>le</strong> des’approprier intégra<strong>le</strong>ment. Il a plutôt fallu s’approprier <strong>le</strong>s notions intéressantes dans notre contexte.Une tel<strong>le</strong> appropriation partiel<strong>le</strong> d’un domaine technique comp<strong>le</strong>xe est une démarche longue mais el<strong>le</strong> estaussi nécessaire à toute collaboration avec des chercheurs de cette communauté. Or <strong>le</strong> domaine del’information géographique et des systèmes d’information géographique a beaucoup à recevoir de lacommunauté d’acquisition des connaissances : l’application de ses acquis en termes de partage et deréutilisation de connaissances nous semb<strong>le</strong> pouvoir répondre au problème épineux et crucial de l’accèsd’utilisateurs à l’information géographique sous ses représentations actuel<strong>le</strong>s. Cette démarche nous permetd’envisager une solution à ce problème, et donc une aide à l’exploitation –généra<strong>le</strong>ment dans un contexte deprise de décision- plus efficace et plus rapide de données géographiques dans des domaines ou l' expertisegéographique est mineure mais dont l' information géographique est devenue néanmoins une composante duprocessus décisionnel. L’enjeu de ces travaux, et de ceux allant dans <strong>le</strong> même sens, est que <strong>le</strong> domaine del’information géographique, qui doit être accessib<strong>le</strong> à tous, ne soit pas un monde de BDG et SIG réservé àdes experts.196


¡£¢¥¤¦¤¨§©GLOSSAIREConnaissances : éléments intégrés dans <strong>le</strong> savoir et potentiel<strong>le</strong>ment exploitab<strong>le</strong>s.Données : information qui existe indépendamment d’une intelligence humaine, par exemp<strong>le</strong> dans unordinateur.Formalisation : description de connaissances dans un langage <strong>le</strong>ur apportant une nouvel<strong>le</strong> maniabilité.Information : terme général renvoyant à des données, des informations, ou des connaissances.Informations : données associées à la réalité qu’el<strong>le</strong> représentent.Intelligence Artificiel<strong>le</strong> : domaine de l’informatique traitant de la façon dont <strong>le</strong>s ordinateurs peuventreproduire ou simu<strong>le</strong>r des comportements humains, en particuliers la faculté de traiter des connaissances.Métadonnées : Le terme métadonnée est utilisé pour désigner de façon généra<strong>le</strong> des informations relatives àdes données [Ro<strong>le</strong> 99], destinées à être manipulées el<strong>le</strong>s-mêmes comme des données.Modélisation : Construction de structures formel<strong>le</strong>s pour représenter un savoir. Dans notre rapport ce termeest souvent équiva<strong>le</strong>nt de celui de « formalisation ». Lorsque <strong>le</strong> terme « modélisation » est utilisé enopposition avec <strong>le</strong> terme « représentation » il renvoie à une formalisation qui peut être plus faci<strong>le</strong>mentmaniée par un homme que par une machine alors que la représentation est destinée à être intégrée dans unemachine.Ontologie : Spécification explicite d’une conceptualisation [Gruber 93]. Ensemb<strong>le</strong> de concepts et de relationsentre ces concepts permettant de décrire, avec un certain consensus et une certaine exhaustivité, un domainedonné.Profil utilisateur : Des profils utilisateurs sont des descriptions, selon certaines variab<strong>le</strong>s, d’utilisateurstypiques d’un système. Ils sont construits pour permettre, lorsque <strong>le</strong> système est exploité par un utilisateurréel, d’appréhender cet utilisateur comme appartenant à un profil connu et d’en déduire des informationsuti<strong>le</strong>s lors des interactions avec cet utilisateur.197


¡£¢¥¤¦¤¨§©Représentation : Ce terme est généra<strong>le</strong>ment employé de façon équiva<strong>le</strong>nte à modélisation ou formalisation. Ilfaut noter deux nuances paradoxa<strong>le</strong>s du termes « représentation ». Lorsqu’il est utilisé en opposition au termemodélisation, il renvoie à une formalisation destinée à être intégrée dans une machine (c’est en faitl’interprétation « IA » de ce terme). Par contre, dans certains contextes, il permet de renvoyer à une activitéde formalisation très peu poussée « la représentation que se fait l’homme du monde qui l’entoure ». Il s’agitlà de l’acception commune de ce terme, qui renvoie à une activité moins spécialisée que la modélisation.Sémantique : lien entre un symbo<strong>le</strong> et la réalité que représente ce symbo<strong>le</strong>.Structure : Ensemb<strong>le</strong> d’éléments et de liens entre ces éléments.Type : Variab<strong>le</strong> caractérisé par son domaine de va<strong>le</strong>ur et des opérations disponib<strong>le</strong>s sur cette variab<strong>le</strong>.UML : Unified Modelling Language. Langage de modélisation orienté-objet.198


¡£¢¥¤¦¢§¡©¨¡£BIBLIOGRAPHIE[Abel et al. 99] David Abel, Volker Gaede, Kerry Taylor, Xiaofang Zhou, SMART : Towards SpatialInternet Marketplaces, Geoinformatica, Volume 3, Number 1, March 1999, pp.141-164[AFIGEO 97] Etude du Marché Européen de l’Information Géographique numérique, étude lancée par <strong>le</strong>Conseil National de L’Information Géographique et l’Association Française pour l’InformationGéographique, octobre 1997[AFIGEO 98] L’information géographique française dans la société de l’information, état des lieux etpropositions d’action, étude lancée par <strong>le</strong> Conseil National de L’Information Géographique etl’Association Française pour l’Information Géographique, mai 1998[Albrecht 96] Jochen Albrecht, Universal GIS operations for environmental modeling, in Proceedings ofthe 3 rd International Conference on Integrating GIS and Environmental Modeling, Santa Barbara, 1996[Andersen et al. 95] D. Andresen, L. Carver, R. Dolin, C. Fischer, J. Frew, M. Goodchild, O. Ibarra, R.Kothuri, M. Larsgaard, B. Manjunath, D. Nebert, J. Simpson, T. Smith, T. Yang, Q. Zheng, The WWWPrototype of the A<strong>le</strong>xandria Digital Library, Proceedings of ISDL' 95: International Symposium on DigitalLibraries, Tsukuba, Japan, August 1995[Andrienko and Andrienko 99] Andrienko, G. and Andrienko, N., Interactive Maps for Visual DataExploration, International Journal Geographical Information Science, Special Issue on Visualization forexploration of Spatial data, 1999 v.13 (4), pp.355-374[Aussenac 89] Nathalie Aussenac, Conception d’une Méthodologie et d’un Outil d’Acquisition deConnaissances Expertes, Thèse en Informatique et Intelligence Artificiel<strong>le</strong>, Université Paul Sabatier,Toulouse, octobre 1989[Badard 00] Thierry Badard, Propagation des mises à jour dans une base de données multireprésentationspar analyse des changements géographiques, Thèse en Sciences de l’InformationGéographique, Université de Marne la Vallée, 2000[Barrault et al. 01] Barrault M., Regnauld N., Duchêne C., Haire K., Baeijs C., Demazeau Y., Hardy P.,Mackaness W., Ruas A., Weibel R. 2001. Integrating Multi-agent, Object-oriented, And AlgorithmicTechniques For Improved Automated Map Generalization, in Proceedings of 20th InternationalCartographic Conference, Beijing, 2001[Bédard and Sondheim 97] Yvan Bédard, Mark Sondheim, BCRNS Conceptual Data Dictionary, version1.0, march 1997[Bédard et al. 00] Yvan Bédard, Tim Merrett, Jiawei Han, Fundamentals of Spatial Data Warehousing forGeographic Know<strong>le</strong>dge Discovery, in Geographic Data Mining and Know<strong>le</strong>dge Discovery, H. Mil<strong>le</strong>r and199


¡£¢¥¤¦¢§¡©¨¡£J. Han (ed), Research Monographs in GIS series, Peter Fisher and Jonathan Raper (ed), Taylor & Francis,2000[Bel Hadj Ali 01] Atef Bel Hadj Ali, Qualité géométrique des entités géographiques surfaciques,Application à l’appariement et définition d’une typologie des écarts géométriques, Thèse de doctorat enSciences de l’Information Géographique, Université de Marne la Vallée, 2001[Berry 87] Joseph Berry, Fundamental Operations in Computer-Assisted Map Analysis, IJGIS, Vol 1,No2, 1987, pp119-136[Berry 93] Joseph Berry, Beyond Mapping, concepts, algorithms and issues in GIS, GIS World Books,USA, 1993[Bertin 67] Jacques Bertin, La Sémiologie Graphique, ed Gauthier-Villars, Paris, 1967[Bishr 97] Yaser Bishr, Semantic Aspects of Interoperab<strong>le</strong> GIS, PhD Thesis, ITC, Netherlands, 1997[Bittner 99] Thomas Bittner, Rough Location, PhD Thesis, Technical University Vienna, January 1999[Borgo et al. 97] Stefano Borgo, Nicolas Guarino, Claudio Masolo, Guido Vetere, Using a LargeLinguistic Ontology for Internet-Based Retrieval of Object-Oriented Components, Conference onSoftware Engineering and Know<strong>le</strong>dge Engineering SEKE’97[Bouillé 77] F. Bouillé, Un modè<strong>le</strong> universel de banque de données, simultanément partageab<strong>le</strong>, portab<strong>le</strong>et répartie, Thèse de Doctorat ès Sciences Mathématiques-Informatique, Université Paris VI, 1977[Bouillé 96] F. Bouillé, HBDS in GIS : overview on the model, methodology and applications, inproceedings of the Congress on Remote Sensing for Environment – Data Processing and Interpretation,Moscow, 1996[Boursier et Mainguenaud 92] Patrice Boursier, Michel Mainguenaud, Spatial Query Languages :extended SQL vs visual languages vs hypermaps, in Proceedings of the 5 th International Conference onSpatial data Handling, SDH’92, Char<strong>le</strong>ston, USA, 1992, pp.249-259[Brassel and Weibel 88] Kurt Brassel, Robert Weibel, A Review and Framework of Automated MapGeneralization, Int. Journal of Geographical Information Systems 2(3), pp.229-244, 1988[Brun et al. 87] F. Brun, L. Buffat, P. Stiva<strong>le</strong>t, C. Raphel, Approche cognitive des représentationsmenta<strong>le</strong>s spatia<strong>le</strong>s, Centre de <strong>Recherche</strong>s du Service de Santé des Armées, Rapport Interne No.6/CRSSA/PS, 1987[Buttenfield and Kum<strong>le</strong>r 96] Buttenfield, B.P. & Kum<strong>le</strong>r, M.P., Tools for browsing environmental data:The A<strong>le</strong>xandria Digital Library Interface, in Proceedings of the Third International Conference onIntegrating Geographic Information Systems and Environmental Modeling. Santa Fe, New Mexico,January 21-26, 1996[Cébelieu 01] Gil<strong>le</strong>s Cébelieu, Mise en place de la base de métadonnées pour l' archivage, la consultationet la diffusion des données numériques sur <strong>le</strong> réseau, Rapport interne de l’IGN DIFNUM/201, SaintMandé, 2001[Chartron 97] Ghislaine Chartron, Repérage de l’Information sur Internet : Nouveaux Outils, ApprochesBibliothéconomiques et Micro-structures, CDI Virtuel : Utilisation des Réseaux pour l’Accès à laCommunication, CRDP de reims, avril 1997, http://www.urfist.jussieu.fr/urfist/artic<strong>le</strong>.htm[Chandrasekaran et al. 98] B. Chandrasekaran, J. R. Josephson, V. Richard Benjamins, The Ontology ofTasks and Methods, in Proceedings of KAW' 98, E<strong>le</strong>venth Workshop on Know<strong>le</strong>dge Acquisition,Modeling and Management, Alberta, Canada, April 1998[Cheylan 92] Jean-Paul Cheylan, Classification des foncctions de traitement dans <strong>le</strong>s SIG : éléments desynthèse, Communication à la conférence SIG-GIS 1992[Chomicki and Revesz 99] Jan Chomicki, Peter Revesz, A geometric framework for specifyingspatiotemporal objects, in proceedings of the 6 th International Workshop on Time Representation andReasoning, 1999, pp.41-46[Chrisman 99] Nicholas Chrisman, A transformational approach to GIS operations, in InternationalJournal of Geographical Information Science, 1999, vol 13, n 7, pp.617-637[Christensen et al. 01] Erik Christensen, Greg Meredith, Francisco Curbera, Sanjiva Weerawarana, WebServices Description Language (WSDL) 1.1, 2001 http://msdn.microsoft.com/library/?url=/library/enus/dnwebsrv/html/wsdl.asp?frame=true200


¡£¢¥¤¦¢§¡©¨¡£[Cian et al. 89] C. Cian, P. Filliat, C. Raphel, Processus cognitifs mis en jeu dans la <strong>le</strong>cture de cartestopographiques, Centre de <strong>Recherche</strong>s du Service de Santé des Armées, Rapport Interne No. 3/FH/PS,1989[Claramunt et al. 94] Christophe Claramunt, Marie-Hélène de Sède, Roland Prélaz-Droux, Laura Vida<strong>le</strong>,Sémantique et Logique Spatio-temporel<strong>le</strong>s, revue Internationa<strong>le</strong> de Géomatique, Vol. 4, No. 2, pp165-180, 1994[Claramunt and Mainguenaud 96] Christophe Claramunt, Michel Mainguenaud, A Spatial Data Model forNavigation Know<strong>le</strong>dge, SDH ’96, 1996[Claval 82] Paul Claval, La nouvel<strong>le</strong> géographie, Que Sais-je ?, Paris, 1982[C<strong>le</strong>ment et al. 97] Gil<strong>le</strong>s C<strong>le</strong>ment, Christian Larouche, Denis Gouin, Paul Morin, Henry Kucera, OGDI :Towards Interoperability among Geospatial Databases, SIGMOD Record, Vol. 26, No. 3, September1997[Clouard et al. 02] Régis Clouard, Abderrahim Elmoataz, Marinette Revenu, Une méthodologie dedéveloppement d' applications de traitement d' images, RFIA, Angers, 2002[CNIG 97] Conseil National de l’Information Géographique, Le Catalogage des Données, 9 ème JournéeAnnuel<strong>le</strong> de la <strong>Recherche</strong> Géographique, Synthèse des interventions et débats, Lyon, 1997[Connolly et al. 01] Dan Connolly, Frank van Harme<strong>le</strong>n, Ian Horrocks, Deborah L. McGuinness, Peter F.Patel-Schneider, Lynn Andrea Stein, DAML+OIL Reference Description, W3C Note 18, December 2001,http://www.w3.org/TR/daml+oil-reference[Corona and Winter 01] Corona, B.; Winter, S., 2001: Navigation Information for Pedestrians from CityMaps. In: Konecny, M.; Friedmannova, L.; Golan, J.; Kolar, M. (Eds.), GI in Europe: Integrative –Interoperab<strong>le</strong> – Interactive, Proceedings of the 4th AGILE Conference on Geographic InformationScience, Masaryk University Brno, pp. 189-197[Crusson et Girard 01] Tanguy Crusson, Didier Girard, XML Cartographie des standards pourl'entreprise, Developpeur Référence, v1.3, juin 2001[Dangermond 83] J. Dangermond, A classification of software components commonly used in geographicinformation systems, in Design and imp<strong>le</strong>mentation of computer-based geographic information systems,D. J. Peuquet, J. O’Callaghan (eds), 1983, pp.70-91[David 91] Benoît David, Modélisation, représentation et gestion d’information géographique, Thèse dedoctorat de l’Université de Paris VI en informatique, Paris 1991[De la Losa 00] Arnaud de la Losa, Modélisation de la troisième dimension dans <strong>le</strong>s bases de donnéesgéographiques, thèse de doctorat en Sciences de l’Information Géographique, Université de Marne laVallée, janvier 2000[Delouis et Krivine 95] I. Delouis, J.P. Krivine, LISA : un langage réf<strong>le</strong>xif pour opérationnaliser <strong>le</strong>smodè<strong>le</strong>s d' expertises, Revue d' Intelligence Artificiel<strong>le</strong>, 9(1), Hermès, Paris, 1995, pp.53-88[Denand 00] Nicolas Denand, La question où : des critères pour <strong>le</strong> calcul de la réponse, in Actes desRencontre des Jeunes Chercheurs en Intelligence Artificiel<strong>le</strong>, Lyon, Septembre 2000[Denègre et Salgé 96] Jean Denègre, François Salgé, Les systèmes d’information géographique, Que saisje?, Presses Universitaires de France, Paris, 1996[Devoge<strong>le</strong> et al. 98] Thomas Devoge<strong>le</strong>, Christine Parent, Stefano Spaccapietra: On Spatial DatabaseIntegration. International Journal of Geographical Information Science 12(4): 335-352, 1998[DG 99] Distributed Geolibraries : Spatial Information Resources, Summary of a Workshop, Panel onDistributed Geolibraries, National Research Council, National Academy Press, Santa Barbara 1999.[Didier 90] Michel Didier, Utilité et Va<strong>le</strong>ur de l’Information Géographique, Ed. ECONOMICA, 1990[Duchêne et Ruas 01] Duchêne C. et Ruas A., Généralisation de données géographiques : Présentationdes résultats du projet AGENT. Bul<strong>le</strong>tin d' information de l' IGN, n°72 : Bilan de la <strong>Recherche</strong> 2000, 2001[Dueker and But<strong>le</strong>r 98] K. J. Dueker, J. A. But<strong>le</strong>r, GIS-T Enterprise Data Model with SuggestedImp<strong>le</strong>mentation Choices, URISA Journal, vol. 10, No. 1, Spring 1998[Egenhofer and Mark 95] Max Egenhofer , David Mark, Naive Geography, Andrew U. Frank, WernerKuhn (Eds.): Spatial Information Theory: A Theoretical Basis for GIS, International Conference COSIT' 95, Semmering, Austria, September 1995, Proceedings. Lecture Notes in Computer Science, Vol. 988,Springer, 1995 pp.1-15201


¡£¢¥¤¦¢§¡©¨¡£[Faiz 96] Sami Othman Faiz, Modélisation, exploitation et visualisation de l'information qualité dans <strong>le</strong>sBases de Données Géographiques, Thèse de l'université de Paris-Sud, UFR scientifique d'Orsay, 1996[Fensel et al. 00] D. Fensel, I. Horrocks, F. Van Harme<strong>le</strong>n, S. Decker, M. Erdmann, M. K<strong>le</strong>in, OIL in anutshell, in Know<strong>le</strong>dge Acquisition, Modeling, and Management, Proceedings of the EuropeanKnow<strong>le</strong>dge Acquisition Conference (EKAW-2000), R. Dieng et al. (eds.), Lecture Notes in ArtificialIntelligence, LNAI, Springer-Verlag, October 2000[Ficet 99] Valérie Ficet Cauchard, Réalisation d’un Système d’Aide à la Conception d’Applications deTraitements d’Images : une Approche Basée sur <strong>le</strong> Raisonnement à Partir de Cas, thèse en informatique,Université de Caen, 1999[F<strong>le</strong>tcher et al. 98] David F<strong>le</strong>tcher, John Espinoza, R. D. Mackoy, Stephen Gordon, Bruce Spear, AlanVonderohe, The Case for a Unified Linear Reference System, URISA Journal, Vol. 10, No. 1, Spring1998[Frank 01] Andrew Frank, Ontology for spatio-temporal databases, in Spatiotemporal Databases: TheChorochronos Approach, Lecture Notes in Computer Science, Berlin, Springer-Verlag, to appear[Frew et al. 95] Frew, J., L. Carver, C. Fischer, M. Goodchild, M. Larsgaard, T. Smith, and Q. Zheng,The A<strong>le</strong>xandria Rapid Prototype: building a digital library for spatial information, in Proceedings of the1995 ESRI User Conference Proceedings, Environmental Systems Research Institute, Inc., Redlands, CA,May 22-25, 1995[Frew et al. 99] James Frew, Michael Freeston, Linda Hill, Greg Janee, Mary Larsgaard, Qi Zheng,Generic Query Meta-data for Geospatial Digital Libraries, in Proceedings of The Third IEEE Meta-DataConference, April 1999, Maryland, USA[Gardarin et Valduriez 90] G. Gardarin, P. Valduriez, SGBD Avancés, Bases de Données Objets,Déductives, Réparties, EYROLLES, 1990[Gervais 00] Marc Gervais, Conception d’un manuel intelligent informatisé pour l’usager de donnéesgéographiques comme support à la prise de décision, mémoire d’avant-projet de recherche, départementdes sciences géomatiques de l’université de Laval, Québec, octobre 2000[Gibson 79] J. J. Gibson, Ecological Approach to Visual Perception, published by Lawrence ErlbaumAssociates, 1979[Giordano et al. 94] A. Giordano, H. Veregin, E. Borak, D. Lanter, A conceptual model of GIS-basedspatial analysis, in Cartographica, vol 31, n4, 1994, pp.44-51[Gómez and Benjamins 99] Asuncion Gómez , Richard Benjamins, Overview of Knwo<strong>le</strong>dge Sharing andReuse Components : Ontologies and Prob<strong>le</strong>m-Solving Methods, In Proceedings of the IJCAI-99workshop on Ontologies and Prob<strong>le</strong>m-Solving Methods (KRR5) Stockholm, Sweden, August 2, 1999.(V.R. Benjamins, B. Chandrasekaran, A. Gomez-Perez, N. Guarino, M. Uschold, eds.), pp. 1.1-1.15,Stockholm, 1999[Gonçalves 99] Marie-Rose Gonçalves, Formalisation hybride du raisonnement spatial, Application à laconsultation d’une base de données géographiques, thèse de doctorat en informatique de l’Université deParis XI, Orsay, France, 1999[Goodchild 87] M. F. Goodchild, A spatial analytical perspective on geographical information systems, inInternational Journal of Geographical Information Systems, vol 1, No2, 1987, pp.327-334[Goodchild 91] M. F. Goodchild, Introduction to spatial analysis, GIS/LIS 1991 workshop[Goodchild 95], Mike Goodchild, Report on a Workshop on Metadata held in Santa Barbara, Universityof California, November 1995[Goodchild and Gopal 98] Michael Goodchild, Sucharita Gopal, Accuracy of Spatial Databases, Hermes,Paris, 1998[Goodchild and Jeansoulin 98] Michael Goodchild, Robert Jeansoulin, Data Quality in GeographicInformation, Hermes, Paris, 1998[Goodchild 99] Michael Goodchild, The Geolibrary, 1999[Gordillo et al. 96] Silvia Gordillo, Fernando Das Neves, Catalina Mostaccio, Ana Levato, DesignPatterns for Geographic Information Systems, in proceedings of Samos International Conference onGeographic Information Systems in Urban Environmental and Regional Planning, Samos, Greece, 1996[Grasland 92] Claude Grasland, " Analyse des coup<strong>le</strong>s de lieux et modélisation en géographie ", Géopoint1992, Groupe Dupont, Université d'Avignon, pp.97-105, 1992202


¡£¢¥¤¦¢§¡©¨¡£[Gruber 93] Thomas Gruber, Towards Princip<strong>le</strong>s for the Design of Ontologies Used for Know<strong>le</strong>dgeSharing, KSL 93-04, Know<strong>le</strong>dge System Laboratory, Stanford University, 1993[Guarino 95] Nicola Guarino, Formal Ontology, Conceptual analysis and Know<strong>le</strong>dge Representation,International Journal of Human-Computer Studies, 43(5/6) :p625—640, 1995[Guarino 97] Nicola Guarino, Semantic Matching: Formal Ontological Distinctions for InformationOrganization, Extraction, and Integration, in M. T. Pazienza (ed.) Information Extraction: AMultidisciplinary Approach to an Emerging Information Technology, Springer Verlag, 1997, pp.139-170.[Guarino 98] Nicola Guarino, Some Ontological Princip<strong>le</strong>s for Designing Upper Level LexicalResources, 1 st International conference on Language resources and Evaluation, Spain, May 1998[Guarino et al. 99] Nicola Guarino, Claudio Masolo, Guido Vetere, Ontoseek : Content-Based Access tothe Web, IEEE 1999[Guarino and Welty 00] Nicola Guarino, Christopher Welty, Identity, Unity, and Individuality: Towards aFormal Toolkit for Ontological Analysis, in the proceedings of ECAI-2000, H. Werner (ed.), IOS Press,Berlin, 2000, pp. 219-223.[Günther and Voisard 97] Oliver Günther and Agnès Voisard, Metadata in Geographical andEnvironmental Data Management, in Managing Mutimedia Data : Using Metadata to Integrate andApply Digital Data, W. Klas and A. Sheth (eds), McGraw Hill, 1997[Günther and Mül<strong>le</strong>r 98] O. Günther, R. Mül<strong>le</strong>r, From GISystems to GIServices: Spatial Computing inthe Internet Marketplace, in Interoperability in Geographic Information Systems, M. Egenhofer, R.Fegeas, M. Goodchild (eds.), Kluwer Academic Publishers, 1998.[Guting and Schneider 95] R. H. Guting, M. Schneider, Realm-Based Spatial Data Types: The ROSEAlgebra, in the VLDB Journal, 4(2):243--286, April 1995[GSDI/TWG 00] GSDI Technical Working Group, Developing Spatial Data Infrastructures : the SDICookbook, v1.0, Douglas Nebert (Ed), 2000, CD-ROM[Hangouët 98] Jean-François Hangouët, Approche et méthodes pour l’automatisation de la généralisationcartographique : application en bord de vil<strong>le</strong>, Thèse en Sciences de l'Information Géographique,Université de Marne la Vallée, 1998[Hanigan 90] Francis L. Hanigan, GIS Marketing in the 1990s, in The GIS FORUM, Francis L. Hanigan(ed), 1990[Haton et al. 91] Jean-Paul Haton, Nadjet Bouzid, François Charpil<strong>le</strong>t, Marie-Christine Haton, BrigitteLâasri, Hassan Lâasri, Pierre Marquis, Thierry Mondot, Amedeo Napoli, Le Raisonnement enIntelligence Artificiel<strong>le</strong>, InterEditions, Paris 1991[Hedorfer et Bianchin 98] Markus Herdorfer, Alberta Bianchin, Un modè<strong>le</strong> Structurel pour Métadonnées,Journées Cassini, Marne la Vallée, 1998[Hill et al. 97] Linda L. Hill, Ron Dolin, James Frew, Randall B. Kemp, Mary Larsgaard, Daniel R.Montello, Mary-Anna Rae, Jason Simpson, User Evaluation: Summary of the Methodologies and Resultsfor the A<strong>le</strong>xandria Digital Library, A<strong>le</strong>xandria Digital Library Project, University of California, SantaBarbara, California, 1997[Hubert 01a] Frederic Hubert, Conception d'une interface Web pour l'aide à la saisie des besoins eninformation géographique, La <strong>Recherche</strong> à l' IGN, Bul<strong>le</strong>tin d' information de l' IGN n°72,IGN (Eds),2001, àparaître[Hubert 01b] Frederic Hubert, Assistance mechanisms use for needs specifications in geographicalinformation on the Web, in Proceedings of the 20 th International Cartographic Conference, Beijing,august 6-10, vol 4, pp2320-2329, 2001[Jarrold and Davis 96] William Jarrold, Tony Davis, The CYC system as an aid for GIS, presented at theNCGIA Specialist Meeting, Texas, 1996, NCGIA Technical Report 97-2[Jordan et al. 98] T. Jordan, M. Raubal, B. Gartrell, M. Egenhofer, An Affordance-Based Model of Placein GIS, 8 th International Symposium on Spatial Data Handling, Vancouver, Canada, T. Poiker and N.Chrisman (Ed.), July 1998, pp. 98-109[Kashyap 97] Vipul Kashyap, Information Brokering over heterogeneous digital data : A metadata basedapproach, PhD Thesis, Large Sca<strong>le</strong> Distributed Information System Laboratory, Department of ComputerScience, University of Georgia, October 1997203


¡£¢¥¤¦¢§¡©¨¡£[Kuhn and Frank 91] Werner Kuhn, Andrew Frank, A formalization of metaphors and image-schemas inuser interfaces, in D. Mark and A. Frank (eds.), Cognitive and linguistic aspects of geographic space,pp419-434, Kluwer academic publisher, Netherlands, 1991[Kuiper 78] Ben Kuiper, Modeling spatial know<strong>le</strong>dge, Cognitive Science, Vol. 2, 1978, pp. 129-153[LaC<strong>le</strong>f 01] La C<strong>le</strong>f, An Operational Model for Unlocking Public Sector GI through E-Commerce,LaC<strong>le</strong>f Final Report PUB1102-LACLEF 25035/0, WP1/MEGR/ 030 / 11, Luxembourg, 2001[Lagoze et al. 96] Carl Lagoze, Clifford Lynch, Ron Daniel Jr., The Warwick Framework a ContainerArchitecture for Aggregating sets of Metadata, result of Metadata Workshop II in Warwick U.K. 1996[Lakoff 92] George Lakoff, The Contemporary Theory of Metaphor, Metaphor and Thought, Ortony A.(ed), Cambridge University Press, 1992[Lamy et al. 99] Lamy S., Ruas A., Demazeau Y., Jackson M., Mackaness W.A. and Weibel R., TheApplication of Agents in Automated Map Generalisation. In Proceedings of 19th InternationalCartographic Conference, Ottawa., 1999, vol.2, pp.1225-1234.[Larson 96] Ray R. Larson, Geographic Information Retrieval and Spatial Browsing, in GIS andLibraries: Patrons, Maps and Spatial Information, edited by Linda Smith and Myke Gluck, University ofIllinois, 1996, pp. 81-124[Lataillade 97] Philippe Lataillade, Les Métadonnées Géographiques, Etude d'un Système de Cataloguedes Données Géographiques pour la Défense, Rapport d'Etude, 1997[Laurini and Thompson 92] R. Laurini, D. Thompson, Fundamentals of spatial information systems,Academic Press, San Diego, 1992[Laurini et Mil<strong>le</strong>ret-Raffort 93] Robert Laurini, Françoise Mil<strong>le</strong>ret-Raffort, Les bases de données engéomatique, Hermes, Paris, 1993[Laurini et al. 98] Robert Laurini, Sylvie Servigne, Thierry Ubeda, Alain Puricelli, La Réingénierie desDonnées géographiques : Problématiques Particulières, Réingénierie SI 98[Laurini and Gordillo 00] Robert Laurini, Sylvia Gordillo, Field Orientation for Continuous SpatiotemporalPhenomena, in proceedings of the International Workshop on Emerging Technologies for GeobasedApplicatons, Ascona, Switzerland, 2000, pp. 77-101May 22-26, 2000[Lefébure et Venturi 98] René Lefébure, Gil<strong>le</strong>s Venturi, Le Data Mining, ed Eyrol<strong>le</strong>s, Paris, 1998[Lemarié 96] Céci<strong>le</strong> Lemarié, Etat de l’art sur l’appariement, rapport de recherche de l’InstitutGéographique National, DT/9600022, juil<strong>le</strong>t 1996[Lemarié and Badard 01] Céci<strong>le</strong> Lemarié, Thierry Badard, Cartographic database updating, inProceedings of the 20 th International Cartographic Conference, Beijing, august 6-10, 2001, vol 2,pp.1376-1385[Lenat and Guha 90] D. Lenat, R. Guha, Building Large Know<strong>le</strong>dge-based Systems, Representation andInference in the CYC project, Addison-Wes<strong>le</strong>y, Massachussetts, 1990[Le Roux 94] Bernard Le Roux, Eléments d'une Approche Constructive de la Modélisation et de laRéutilisation en Acquisition des Connaissances, Thèse de Doctorat de l'Université de Paris IV, 1994[Lopes et al. 97]Juliano Lopes de Oliveira, Fatima Pires, Claudia Bauzer Medeiros, An environment formodeling and design of geographic applications, in Geoinformatica, vol 1, Kluwer Academic Publisher,Boston, 1997, pp.29-58[Luzet 98] Claude Luzet , MEGRIN’s GDDD, moving to distributed metadata, EOGEO98, Salzburg,February 1998[MacEachren and ICA 98] Alan MacEachren, the ICA Commission on Visualization, Visualization –Cartography for the 21 st century, proceedings of the Polish Spatial Information Association conference,Warsaw, Poland, May 1998[MacEachren et al. 99a] Alan MacEachren, Monica Wachowicz, Robert Edsall, Daniel Haug,Constructing Know<strong>le</strong>dge from Multivariate Spatiotemporal Data, IJGIS International Journal ofGeographic Information Science 1999[MacEachren et al. 99b] Alan MacEachren, Menno-Jan Kraak, Edward Verbree, Cartographic issues inthe design and applications of geospatial virtual environments, 19 th International CartographicConference, Ottawa, Canada, August 1999204


¡£¢¥¤¦¢§¡©¨¡£[Maguire 91] D. J. Maguire, An overview and definition of GIS, in Geographical Information Systems :Princip<strong>le</strong>s and Application, edited by D. J. Maguire, M. F. Goodchild and D. Rhind (Harlows :Longmans), 1991, vol1, pp.9-20[Maguire and Raper 90] D. J. Maguire, J. F. Raper, An overview of GIS functionality, in Proceedings ofthe Design Models and Functionality Conference, Midlands Regional Research Laboratory, Leicester,1990[Maguire and Dangermond 91] D. J. Maguire, J. Dangermond, The functionality of GIS, in GeographicalInformation Systems : Princip<strong>le</strong>s and Application, edited by D. J. Maguire, M. F. Goodchild and D. Rhind(Harlows : Longmans), 1991, vol1, pp.319-335[Major 99] Wladimir Major, Approche de la concertation territoria<strong>le</strong> par l’analyse systémique et l’analyse<strong>le</strong>xica<strong>le</strong> du discours des acteurs. Perspectives d’application aux systèmes d’information géographique,Thèse en informatique, Eco<strong>le</strong> Polytechnique Fédéra<strong>le</strong> de Lausanne, 1999[Marcus 88] Sandra Marcus (Ed.), Automating Know<strong>le</strong>dge Acquisition for Expert Systems, Boston:Kluwer Academic, 1988[Marcus and McDermott 89] Sandra Marcus, John McDermott, Salt: A know<strong>le</strong>dge acquisition languagefor propose-and-revise systems, Artificial Intelligence, No 39, 1989, pp1--37[Mark 92] David M. Mark, Spatial Metaphors for Human-Computer Interaction, Spatial Data HandlingSDH’92 vol 1[Mark et al. 97] David Mark, Max Egenhofer, Kath<strong>le</strong>en Hornsby ,Geographic Worlds, NCGIA technical report 97-2 1997205Formal Models of Commonsense[Mathet 00] Yann Mathet, Étude de l’expression en langue de l’Espace et du Déplacement : analyselinguistique, modélisation cognitive, et <strong>le</strong>ur expérimentation informatique. Thèse de doctorat del’université de Caen, décembre 2000[Mennis et al. 00] J. L. Mennis, D. J. Peuquet, L. Qian, A conceptual framework for incorporatingcognitive princip<strong>le</strong>s into geographical database representation, in the International Journal ofGeographical Information Science, 14(6), 2000, pp.501-520[Mil<strong>le</strong>r 98] G. Mil<strong>le</strong>r, Nouns in WordNet, in C. Fellbaum (ed.), WordNet: an e<strong>le</strong>ctronic <strong>le</strong>xical database,Language, Speech and Communication, The MIT Press, pp. 23-46, 1998[Mitchell 99] Andy Mitchell, The ESRI Guide to GIS Analysis, volume 1 : Geographic patterns &relationships, USA, 1999[Motet 99] S.Motet, Multi-représentation : Projet MurMur, Cassini' 2000, La Rochel<strong>le</strong>, septembre 2000[OpenGIS TC 98] OpenGIS Consortium Technical Committee, The OpenGIS ® Guide : Introduction toInteroperab<strong>le</strong> Geoprocessing and the OpenGIS Specification, Edited by Kurt Bueh<strong>le</strong>r and Lance McKee,3 rd edition, June 3, 1998[OpenGIS 01] OpenGIS GML Working Group, Geography Markup Language (GML) 2.0, OpenGIS®Imp<strong>le</strong>mentation Specification, OGC Document Number: 01-029, Simon Cox, Adrian Cuthbert, Ron Lake,Richard Martell (eds), Feb 2001[Openshaw 91] S. Openshaw, Developing appropriate spatial analysis methods for GIS, in GeographicalInformation Systems : Princip<strong>le</strong>s and Application, edited by D. J. Maguire, M. F. Goodchild and D. Rhind(Harlows : Longmans), 1991, vol1, pp.389-402[Ormeling 98] Ferjan Ormeling, Environmental mapping strategies, oral presentation at Intercarto, Brno,1998[Papazoglou and Hoppenbrouwers 99] M. Papazoglou, J. Hoppenbrouwers, Know<strong>le</strong>dge Navigation inNetworked Digital Libraries, Keynote speech for the 11th European Workshop on Know<strong>le</strong>dgeAcquisition, Modeling, and Management (EKAW' 99), in Lecture Notes in Computer Science, LNAI1621, Springer Verlag, Heidelberg, 1999[Paepcke et al. 98] Andreas Paepcke, Chen-Chuan K. Chang, Héctor Garcia-Molina, Terry Winograd,Interoperability for Digital Libraries Worldwide, communication of the ACM, vol 41, n°4, april 98[Raper 96] Jonathan Raper, Unsolved prob<strong>le</strong>ms of spatial representation, in proceedings of SDH’96,1996, 14.1 – 14.11[Rhind 01] David Rhind, Global and National Geographic Information Policies, Practice and Educationin a g-business world, in GI in Europe : Integrative, Interoperab<strong>le</strong>, Interactive, proceedings of the 4 thAGILE conference, april 2001, Brno, Czech Republic


¡£¢¥¤¦¢§¡©¨¡£[Riedo et Mottier 02] Marc Riedo, Vincent Mottier, Principes et concepts des langages des SIGcommerciaux, dans Languages pour <strong>le</strong>s SIG - Conception, développement et IHM, Michel Mainguenaud(ed), Information Géographique et Aménagement du Territoire, Hermès Science Publication, Paris, 2002[Rodriguez and Egenhofer 99] Andrea Rodriguez, Max Egenhofer, Putting Similarity Assessments intoContext: Matching Functions with the User's Intended Operations, in the proceedings of Modeling andUsing Context, CONTEXT-99, Trento, Italy, P. Bouquet, L. Serafini, P. Brezillon, and F. Castellani(eds.), Lecture Notes in Artificial Intelligence, Vol. 1688, Springer-Verlag, pp. 310-323, September 1999[Ro<strong>le</strong> 99] François Ro<strong>le</strong>, Panorama des travaux en cours dans <strong>le</strong> domaine des métadonnées, rapport de<strong>Recherche</strong> de l’Institut National des <strong>Recherche</strong>s en Informatique et en Automatique, numéro 3628, février1999[Ruas 99] Anne Ruas, Modè<strong>le</strong> de généralisation de données géographiques à base de contraintes etd’autonomie, Thèse de doctorat en Sciences de l’Information Géographique de l’Université de Marne laVallée, 1999[Schreiber et al. 99] A. Th. Schreiber, J. M. Akkermans A. A. Anjewierden, R. de Hoog, N. R. Shadbolt,W. Van de Velde, B. J. Wielinga, Know<strong>le</strong>dge Engineering and Management, The CommonKADSMethodology, MIT Press 1999[Sheth 99] Amit Sheth, Changing Focus on Interoperability in Information Systems : from System,Syntax, Structure to Semantic, Interoperating Geographic Information Systems, M. Goodchild, M.Egenhofer, R. Fegeas, C. Kottman (eds). Kluwer, 1999[Siméon 95] Jerome Siméon, <strong>Recherche</strong> en Texte Intégral et Bases de Données Orientées-Objet , Masterthesis in Computer Science, Université Nancy, France, 1995[Siméon 99] Jérôme Siméon, Intégration de Sources de Données Hétérogènes ou Comment MarierSimplicité et Efficacité, Thèse de l’Université Paris XI en Informatique, Paris 1999[Spaccapietra et al. 99] S. Spaccapietra, C. Parent, E. Zimanyi, C. Vangenot. MurMur: A ResearchAgenda on Multip<strong>le</strong> Representation, in Proceedings of the International Symposium on DatabaseApplications in Non Traditional Environments, DANTE'99, Kyoto, Japan, 1999[Spéry et Libourel 98] Laurent Spéry, Thérèse Libourel, Vers une structuration des métadonnées,Journées Cassini, Marne la Vallée, 1998[Spéry et al. 99] Laurent Spéry, Christophe Claramunt, Thérèse Libourel, A lineage metadata model forthe temporal management of a cadastre application, in proceedings of the International Worshop onSpatio-temporal Models and Language SDTDML'99, A. M. Tjoa, A. Cammelli and R. R. Wagner (eds.),The IEEE Computer Society, Florence, 1999, pp.466-474[Timpf et al. 92] S. Timpf, G. Volta, D. Pollock, M. Egenhofer, A conceptual model of wayfinding usingmultip<strong>le</strong> <strong>le</strong>vels of abstraction, Theories and Methods of Spatio-temporal Reasoning in Geographic Space,A. Frank, I. Campari, U. Formentini (eds), Springer-Verlag, Italia, 1992, pp.348-362[Timpf et al. 96] Sabine Timpf, Martin Raubal, Werner Kuhn, Experiences with Metadata, SDH’96[Timpf and Frank 97] Sabine Timpf, Andrew Frank, Using Hierarchical Data Structures for HierarchicalReasoning pp.69-83[Tomlin 91] C. D. Tomlin, Cartographic Modelling, in Geographical Information Systems : Princip<strong>le</strong>sand Application, edited by D. J. Maguire, M. F. Goodchild and D. Rhind (Harlows : Longmans), 1991,vol1, pp.361-374[Tomlin and Berry 79] C. D. Tomlin, J. K. Berry, A mathematical structure for cartographic modelling inenvironmental analysis, in Proceedings of the 39 th Symposium, American Congress on Surveying andMapping, Virginia, 1979, pp.269-283[Traynor and Williams 95] Carol Traynor, Marian G. Williams, Why are Geographic InformationSystems Hard to Use ? proceedings of CHI’95[Trichet et al. 00] Francky Trichet, Michel Leclère, Christophe Choquet, Construire un Système à Base deConnaissances de type Tâche/Méthode à l'aide des Graphes Conceptuels, actes de IC, Toulouse, 2000[Trifona and Sharma 96] Nectaria Tryfona, Jayant Sharma, On Information Modeling to SupportInteroperab<strong>le</strong> Spatial Databases, CAiSE pp. 210-221, 1996[Uschold and Jasper 99] M. Uschold, R. Jasper, A Framework for Understanding and ClassifyingOntology Applications, IJCAI-99 Workshop on Ontologies and Prob<strong>le</strong>m-Solving Methods, Stockholm,1999206


¡£¢¥¤¦¢§¡©¨¡£[Vckovski 98] Andrej Vckovski, Interoperab<strong>le</strong> and distributed processing in GIS, PhD Thesis, Universityof Zurich, ed. Taylor & Francis, 1998[Voisard et Schweppe, 98] Agnès Voisard, Heinz Schweppe, Abstraction and decomposition ininteroperab<strong>le</strong> GIS, International Journal of Geographic Information Systems, 1998[Vossen et al. 97] P. Vossen, W. Peters, P. Díez-Orzas, The Multilingual design of the EuroWordNetDatabase, in Kavi Mahesh (ed.) Ontologies and multilingual NLP, Proceedings of workshop at IJCAI-97,Nagoya, Japan, August 23-29, 1997[Weibel 91] R. Weibel, Amplified Intelligence and Know<strong>le</strong>dge-Based Systems, in Buttenfield, B.P. andMcMaster, R.B. (eds.), Map Generalization: Making Ru<strong>le</strong>s for Know<strong>le</strong>dge Representation, London:Longman, 1991, pp.172-186.[Weibel et al. 95] Stuart Weibel, Jean Godby, Eric Mil<strong>le</strong>r, Ron Daniel, OCLC/NCSA Metadata WorkshopReport, 1995[Willamowski 92] Jutta Willamowski, Modélisation de tâches pour la résolution de problèmes encoopération système-utilisateur, Thèse en informatique à l'Université Joseph Fourier, Grenob<strong>le</strong>, 1992[Worboys 96] M. F. Worboys, Metrics and topologies for geographic space, in Advances in GIS researchII, proceedings of 7th International Symposium on Spatial Data Handling, Kraak and Mo<strong>le</strong>naar (eds),Taylor and Francis, 1996, pp.365-375.[W3C/XML/WG 00] W3C XML Core Working Group, W3C Recommendation: Extensib<strong>le</strong> MarkupLanguage (XML) 1.0, Tim Bray, Jean Paoli, C. M. Sperberg-McQueen, Eve Ma<strong>le</strong>r (eds), 2 nd edition, 2000[Zeitouni et Yeh, 00] Karine Zeitouni, Laurent Yeh, Le Data Mining Spatial et <strong>le</strong>s bases de donnéesspatia<strong>le</strong>s, in Actes des Journées Data Mining Spatial et Analyse du Risque, Versail<strong>le</strong>s, 2000Bénédicte Bucher, Indexer <strong>le</strong>s données géographiques par <strong>le</strong>urs rô<strong>le</strong>s dans la détermination de connaissancesd’utilisateurs, Bul<strong>le</strong>tin d'Information de l'IGN n°70 (1999/3), Saint Mandé, France, 1999Bénédicte Bucher, Users' access to geographic information resources : a model of tasks and ro<strong>le</strong>s to specifyintentional uses regarding availab<strong>le</strong> resources, in Geographical Domain and Geographical Information Systems,Winter, S. (Ed.), GeoInfo Series Vol. 19. Institute for Geoinformation, Vienna University of Technology,Vienna, Austria, 2000Bénédicte Bucher, A Model to Store and Reuse Geographic Application Patterns, in GI in Europe : Integrative,Interoperab<strong>le</strong>, Interactive, proceedings of the 4th AGILE conference, april 2001, Brno, Czech RepublicBénédicte Bucher, Structuring and enriching metadata to enab<strong>le</strong> users’ access to geographic informationresources, in proceedings of the 20 th International Cartographic Conference, Beijing, China, vol 4, pp. 2791-2797, 2001207

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!