Les protocoles de recherche sont un autre élément faisant partie du processus de recherche de ressources dans l'ICDG. Étant donné que vous utiliserez des protocoles de recherche lorsque vous rendrez votre base de données consultable, il vous serait utile de comprendre leur fonction et leur structure. Le présent chapitre :
Un protocole de recherche est un moyen«normalisé » de formuler des questions (ou requêtes), d'obtenir des réponses et d'échanger de l'information entre deux ordinateurs sur Internet. Un protocole de recherche s'apparente à un langage technique. Il spécifie le mécanisme de transport de l'information entre deux ordinateurs.
Par exemple, l'information peut être transmise selon le protocole de transfert hypertexte (HTTP), greffé au protocole de communication/protocole Internet (TCP/IP), à l'aide de connecteurs logiciels. Ce ne sont pas les seuls mécanismes de transport, mais ce sont les plus courants.
Un protocole de recherche spécifie également l'information qui est transmise entre les ordinateurs. Le type d'information transmise comprend :
Lorsque le serveur de recherche fait la traduction entre le protocole de recherche et la base de données, deux éléments entrent en jeu.
La figure 8 ci-dessous illustre la fonction du protocole de recherche dans le flot de communication entre l'utilisateur et la base de données du fournisseur :

Un protocole de recherche peut être soit avec état, soit sans état.
Un protocole avec état signifie que le mécanisme de découverte établit la communication avec votre serveur de recherche et la maintient active pendant toute la durée de la session de recherche. Ainsi, un utilisateur a la possibilité de sélectionner dix produits, d'examiner les résultats de la recherche après le retour des résultats pour le premier produit, sans attendre que les résultats de tous les produits soient retournés.
Un protocole sans état signifie que votre mécanisme de découverte établit la communication avec votre serveur de recherche, envoie un peu d'information, en reçoit un peu, puis coupe la communication. Ainsi, la session de recherche comprend une série de ces interactions ouvrir-envoyer-recevoir-fermer entre le mécanisme de découverte et votre serveur de recherche. Chaque interaction ouvrir-envoyer-recevoir-fermer est indépendante des autres. On dit que le protocole est«sans état»lorsque votre serveur de recherche s'occupe de chacune des interactions individuellement, sans conserver d'« historique»sur les interactions précédentes. Dans ce cas, un utilisateur qui effectue une requête pour dix produits ne pourrait pas examiner les résultats de la recherche avant d'avoir reçu les résultats pour l'ensemble des dix produits.
Pour savoir comment cette spécification de l'ICDG s'applique aux protocoles avec et sans état afin de retourner les métadonnées sur les données géospatiales, prière de voir l'annexe A1.9, Service de découverte de données geospatiales.
Le Portail de découverte de GéoConnexions fonctionne essentiellement avec le protocole de recherche géospatiale suivant :
Les protocoles de recherche géospatiale suivants étaient acceptés auparavant par le Portail de découverte de GéoConnexions, mais ils ne le seront plus pour les nouveaux fournisseurs :
Le protocole de recherche ANSI/NISO Z39.50 de l'American National Standards Institute/ National Information Standards Organization est un protocole de communication entre ordinateurs conçu pour permettre la recherche et l'extraction d'information, de documents plein texte, de données bibliographiques, d'images et d'information multimédia dans un environnement réseau réparti.
Une spécification du protocole normalise la syntaxe de requête, les identités des champs de recherche et le format par défaut des enregistrements retournés, et offre des mécanismes de contrôle des accès et d'autodescription des serveurs. S'appuyant sur une architecture client/serveur et exploité sur Internet, le protocole Z39.50 permet de prendre en charge un nombre croissant d'applications. Tout comme l'environnement réseau dynamique dans lequel cette norme est utilisée, elle évolue afin de répondre aux besoins changeants des créateurs, fournisseurs et utilisateurs d'information.
La norme Z39.50 est très exhaustive. Malheureusement, il peut s'avérer fort complexe pour un fournisseur de données d'installer un logiciel serveur Z39.50 et de le configurer pour effectuer des recherches dans un jeu de données. Cet inconvénient va à l'encontre de l'objectif de GéoConnexions, qui est de réduire le coût de la participation des fournisseurs à un minimum. Pour surmonter ce problème, on a mis au point une trousse d'outils pour les métadonnées du FGDC, contenant le logiciel Z39.50/GEO permettant aux fournisseurs de l'installer et de le configurer facilement.
Le protocole de recherche Z39.50 est basé sur les messages qui utilisent des paires requête/réponse pour chacun des services qu'il prend en charge. Ses services essentiels sont :
D'autres services permettent le contrôle de l'accès, la gestion des ressources, l'autodescription des bases de données visées, etc. Toutefois, ces services sont moins couramment offerts par le logiciel client et serveur que les trois services de base décrits ci-dessus.
La séquence«requête Init»et«réponse Init»(c'est-à-dire le processus qui permet à deux serveurs de se synchroniser afin de pouvoir communiquer entre eux) permet aux deux ordinateurs de se reconnaître mutuellement et d'indiquer les services (ou fonctions) Z39.50 qu'ils offrent.
La requête de recherche contient les paramètres de la requête d'extraction d'information. Elle consiste en une (ou plusieurs) restrictions de type Attribut/Relation/Valeur (p. ex. hauteur > 5).
La réponse contient soit l'ensemble des enregistrements résultant de la recherche, soit seulement le nombre d'enregistrements correspondants. Si la réponse ne comporte que le nombre d'enregistrements, la requête peut être utilisée pour demander des ensembles de ces enregistrements correspondants.
Pour en connaître plus sur le protocole de recherche Z39.50, veuillez consulter :
http://www.cni.org/pub/NISO/docs/Z39.50-brochure/
Actuellement, deux versions officielles de la norme ANSI/NISO sont couramment utilisées : la version 2 est la norme ANSI/NISO Z39.50-1992, et la version 3 est la norme ANSI/NISO Z39.50-1995. Le Portail de découverte de GéoConnexions utilise la version 2. On peut consulter une copie HTML de la version 2 à l'adresse :
Certains protocoles ont plusieurs profils. Un profil identifie un jeu de normes de base ainsi que les options et les paramètres appropriés, nécessaires à l'accomplissement de fonctions identifiées, incluant : a) l'interopérabilité et b) la méthodologie de référence de diverses utilisations de normes de base, significative à la fois pour les utilisateurs et les fournisseurs.
Le modèle d'extraction de l'information énoncé dans la norme Z39.50 est dit indépendant du domaine (ou de son domaine). Les spécialisations par domaine sont fournies par un mécanisme additionnel, appelé«profils d'application ». Des profils spécifiques existent pour les schémas de messagerie des requêtes et des résultats portant sur des données géospatiales. Ces profils sont étroitement associés à des normes sur le contenu de métadonnées spécifiques aux métadonnées géospatiales. Le FGDC a mis au point un profil d'application Z39.50 pour les métadonnées géospatiales appelé GEO. Celui-ci contient des spécifications sur la façon d'implanter les éléments de métadonnées CSDGM (Content Standard for Digital Geospatial Metadata) dans un service Z39.50.
L'utilisation de ce profil assure l'interopérabilité avec le centre d'échange de données (Clearinghouse) du FGDC, entre autres. De plus, le secteur de l'observation de la Terre, représenté par les organismes qui composent le CEOS (Comité sur les satellites d'observation de la Terre) travaille à assurer l'interopérabilité des protocoles GEO et CIP (lesquels sont tous deux basés sur la norme Z39.50). Le protocole CIP (Catalogue Interoperable Protocol) définit une seule interface pour les catalogues d'observation de la Terre. Le profil GEO uniformise (en plus de la norme Z39.50) le modèle de données pour la recherche et l'extraction, les opérateurs du langage de recherche (y compris les opérateurs spatiaux), etc.
Le profil Z39.50 GEO indique qu'un serveur de profil Z39.50 GEO doit :
En outre, le profil Z39.50 GEO présente les caractéristiques suivantes :
La version complète du profil Z39.50 GEO est disponible à l'adresse :
http://www.blueangeltech.com/standards/GeoProfile/geo22.htm
Les nombreux profils de la norme Z39.50 sont énumérés à l'adresse :
http://lcWeb.loc.gov/z3950/agency/profiles/profiles.html
L'architecture Z39.50 GEO telle qu'implantée dans le Portail de découverte de GéoConnexions est illustrée à figure 9.