Informations générales : Concepts DiGIR et Requête
Distributed Generic Information Retrieval (DiGIR) décrit deux concepts différents mais liés :
- Un système de base de données fédéré avec une architecture client/serveur (appelée Provider/Portal dans la nomenclature DiGIR).
- Un protocole de communication utilisé pour échanger des informations entre le fournisseur et le portail. Le protocole DiGIR ne prend en charge qu'un seul échange de données entre le fournisseur et le portail : le portail envoie une requête au fournisseur et le fournisseur répond à cette requête.
Le protocole DiGIR définit son propre standard de requête, et utilise le standard Darwin Core (DwC) pour définir tous les champs utilisés par la requête. XML over HTTP est utilisé pour l'échange de requêtes et d'ensembles de résultats entre le portail et le fournisseur.
Note: Le logiciel EMu DiGIR Provider peut être configuré pour servir d’interface avec n'importe quelle base de données EMu.

Le protocole DiGIR fournit trois types de requête :
Métadonnées |
Une requête metadata retourne un contenu qui décrit le service Provider de données. Pour un exemple, voir metadataResponseExample.xml |
Inventaire (Inventory) |
Une requête inventory retourne un agrégat des valeurs unique d'un champ avec un compte facultatif du nombre d'occurrences des valeurs. Pour un exemple, voir inventoryResponseExample.xml |
Recherche |
Une demande search retourne un enregistrement pour chaque enregistrement de la base de données qui correspond aux critères de requête de la recherche. L'enregistrement retourné comprend les valeurs des champs Darwin Core recherchés. Pour un exemple, voir searchResponseDiGIR1.5.xml |
Toutes les réponses DiGIR ont la même forme fondamentale : une enveloppe comportant des informations générales enveloppées autour du contenu de réponse.
Vous trouverez plus d'informations sur :


Concepts |
Détails |
---|---|
DiGIR |
Distributed Generic Information Retrieval |
Handler (TexQL) / Gestionnaire (TexQL) |
Code PHP spécifié dans un Client Specific Resource Object (voir ci-dessous) et stocké dans l'objet mapping qui génère le TexQL quand un champ Darwin Core post-processed est recherché dans une requête DiGIR. Ce mécanisme est nécessaire parce que si tout ou une partie d'un champ est généré à partir de données qui ne sont pas contenues dans la base de données, il est nécessaire de gérer les demandes qui incluent ces données afin que le bon TexQL soit généré. Voir TexQL et Value Handlers pour plus de détails. |
Handler (Value) |
Code PHP spécifié dans un Client Specific Resource Object (voir ci-dessous) et stocké dans l'objet mapping qui construit ou modifie les données des champs Darwin Core avant de les retourner dans la réponse DiGIR. Voir TexQL et Value Handlers pour plus de détails. |
Client Specific Resource Object / Objet Ressource Spécifique au Client |
Objet PHP spécifique au client qui décrit une ressource individuelle et peut fournir des méthodes pour personnaliser le comportement et le résultat du Provider DiGIR par défaut. |
DiGIR Resources Object / Objet Ressources DiGIR |
Objet PHP spécifique au client qui décrit et peut générer les ressources spécifiées pour ce Provider et certaines parties des métadonnées du client (les parties qui s'appliquent à toutes les ressources de ce Provider). |
Mandatory field / Champ obligatoire |
Champ Darwin Core qui doit contenir des données afin que cet enregistrement DiGIR puisse être inclus dans la réponse DiGIR. |
Mapping |
Relation entre le nom des champs Darwin Core et le nom des colonnes EMu. Voir Mappings. |
Post-processing / Post-traitement |
Un terme utilisé pour le processus dans lequel les données pour un champ Darwin Core sont créées ou modifiées par le Provider DiGIR. Une partie des données du champ Darwin Core peut être récupérée depuis la base de données ou les données peuvent être construites complètement à partir des données spécifiées dans le Client Specific Resource Object. Voir aussi Handler (TexQL) et Handler (Value). |
Provider / Fournisseur |
Terme abstrait pour une entité qui fournit un service DiGIR. Correspond plus ou moins à un serveur EMu. Aussi le terme utilisé pour décrire l'ensemble des scripts qui gèrent les requêtes DiGIR. |
Record (DiGIR/DwC) / Enregistrement (DiGIR/DwC) |
Portion de la réponse DiGIR XML enveloppée dans les étiquettes |
Resource / Ressource |
Spécifie un ensemble logique d'enregistrements parmi l'ensemble complet fournit par le Provider. Ceci peut être tout ou un sous-ensemble des enregistrements. Des ressources multiples sont autorisées pour chaque Provider. |
Resource Code / Code Ressource |
Le code qui identifie uniquement chaque ressource du Provider. Par exemple, |
Resource Restrictions / Restrictions Ressources |
Déclaration(s) TexQL spécifiée(s) dans le Client Specific Resource Object qui limite(nt) les réponses DiGIR aux enregistrements appartenant à une certaine ressource. |
Request / Requête |
Le document XML envoyé à l'accessPoint du Provider pour provoquer une réponse. Formaté selon le protocole DiGIR. |
Response / Réponse |
Le document XML généré quand une requête est reçue à l'accessPoint. Formaté selon le protocole DiGIR. |

Concepts |
Requête / Réponse |
Definition / Détails |
---|---|---|
accessPoint / Point d'accès |
Réponse métadonnées |
L'URL où les requêtes DiGIR sont acceptées. Pour les implémentations EMu DiGIR ce sera toujours |
count / total |
Requête inventaire |
Partie optionnelle de la requête inventory DiGIR XML. Si spécifiée et a une valeur |
dateLastUpdated / date de la dernière mise à jour |
Réponse métadonnées |
La |
diagnostics |
Réponse métadonnées / inventaire / recherche |
Portion de la réponse DiGIR XML qui contient les messages générés par le Provider. Les messages peuvent être des informations générales, des avertissements, des erreurs, etc. |
filter / filtre |
Requête inventaire / Recherche |
Spécifie les enregistrements à retourner dans la réponse DiGIR XML. Similaire à une déclaration SQL TexQL |
Inventaire (Inventory) |
Type requête / réponse |
En tant que requête, spécifie un champ Darwin Core et des count et filter optionnels. En tant que réponse, retourne toutes les valeurs uniques du champ Darwin Core. |
limit / limite |
Requête recherche |
Attribut de l'étiquette Spécifie le nombre maximum d'enregistrements à retourner dans un ensemble de résultats. |
maxSearch ResponseRecords |
Réponse métadonnées |
Le nombre maximum d'enregistrements qui sera retourné dans une seule requête search DiGIR. La valeur par défaut pour le Provider EMu est 1000. |
maxInventory ResponseRecords |
Réponse métadonnées |
Le nombre maximum d'enregistrements qui sera retourné dans une seule requête inventory DiGIR. Voir maxInventoryResponseRecords. |
metadata / métadonnées |
Type requête / réponse |
Il n'y a pas de spécification au delà de la mise en page/format de la requête de base requis par une requête metadata. En tant que réponse, retourne la ressource metadata qui contient les informations sur cette ressource. |
numberOfRecords / nombre d'enregistrements |
Réponse métadonnées |
Le nombre total d'enregistrements DiGIR valides que la ressource fournit. Voir Mandatory Darwin Core fields. |
records / enregistrements |
Requête recherche |
Spécifie l'enregistrement start et l'enregistrement limit. Contient la structure de l'enregistrement. |
search / requête |
Type requête / réponse |
En tant que requête, spécifie un filtre et une structure d'enregistrement. En tant que réponse, retourne tous les enregistrements pour la ressource qui correspond au filtre dans le format spécifié par la structure d'enregistrement. |
start / début |
Requête recherche |
Attribut de l'étiquette |
structure |
Requête recherche |
Spécifie comment créer un enregistrement de réponse DiGIR XML. Similaire à une déclaration SQL TexQL |