sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-users] Mise à jour de la base de document


From: Martin Sevigny
Subject: Re: [sdx-users] Mise à jour de la base de document
Date: Fri, 24 Sep 2004 19:35:03 +0200
User-agent: Mozilla Thunderbird 0.6 (Windows/20040502)

Bonjour,

Je suis un débutant (très très) sur sdx... Je développe un projet pour la bibliothèque nationale du Québec, il s'agit d'un outil de recherche/exploration sur les romans.

Ah! Je me disais avec un nom pareil ;-) "Join the club" comme disent les Québécois.

Pour bâtir le squelette de l'application j'utilise xtogen.

Pour infos, il y a une liste d'utilisateurs de XToGen:
http://lists.nongnu.org/mailman/listinfo/xtogen-users

- Si des notices sont ajoutées à la base de document (de nouveaux romans)... Y'a t-il moyen d'automatiser l'indexation de ces documents ou doit le faire manuellement par l'interface d'administration?

Il y a toujours moyen d'automatiser, en écrivant un bout de code qui détecte les modifications et qui lance l'indexation. SDX, et par extension, XToGen, est d'abord et avant tout une API (et même plusieurs API), donc c'est possible.

- Si des notices sont mise-à-jour,suite à des modifications, le fichier XML sera écrasé... Est-ce que SDX ré-indexera ce document? De la même manière est-ce que SDX détecte qu'un document a déjà été indexé (donc on ne ré-index pas le document)?

SDX non, pas tout seul. Il faut l'aider. XToGen non plus, à ma connaissance, mais je laisse la réponse définitive aux experts.

- L'une des fonctionalités de notre application, sera de présenter une liste des nouveaux romans disponibles. Pour ce faire nous devons nous baser sur une date représentant la date de création de la notice. Je voulais procéder en créant un document d'usage pour les notices. Ce document serait issue d'une transformation XSLT qui ajouterait un élément contenant la date du jour. Cette tranformation fonctionne bien pour les nouveaux documents. Pour un document modifié, je ne vois pas comment je ferais pour ne pas ré-écrasé la date. En fait je voudrais que si un document d'usage (contenant la date) est disponible pour un document original (donc c'est un document qui a été modifié), on récupère certaines valeurs du document d'usage (par exempl: la date) pour les ré-inséré telle quelle dans la nouvelle version du document d'usage.... Est- possible? Je ne vois vraiment pas comment faire?

Je ne suis pas certain de bien comprendre l'approche que tu proposes, mais si l'objectif est de présenter les notices (documents indexés par SDX) qui ont été modifiées en dernier, tu peux faire une recherche sur tous les documents, les trier en ordre de date de modification, puis présenter les derniers.

S'il y a une très grand nombre de notices, ça peut être inefficace, mais pour des nombres raisonnsables ça ira.

Le champ sdxall contient toujours la valeur "1". Donc une recherche de la valeur 1 sur ce champ retourne tous les enregistrements.

Le champ sdxmodificationdate contient la date de modification. Donc un tri DESCendant sur ce champ te présente les plus récents.

- Toujours en relation avec le dernier point, j'ai pensai qu'une autre façon serait de créer un base OAI pour mes notices. Je sais que SDX génère lui-même l'élément dc:date des métadonnées.

Euh, je ne suis pas au courant qu'il fait ça...

- D'abord je dois savoir si je comprend (un peu) comment fonctionne l'OAI... < - En implémentant, l'OAI pour une base de document, je créer en fait une deuxième base de documents qui est alimenté par une autre... Vrai?

Non. Dans SDX, il y a des bases de documents. Pour chacune, on peut, si on le souhaite, l'alimenter par moisson OAI ou, de manière indépendante, l'exposer sous la forme d'un entrepôt OAI.

- Cette base OAI, je ne suis pas certain de comprendre comment l'utiliser... En créant des "harvester" qui permettent certains verbes, je pourrais donc utilisr un navigateur et entrer l'url de ma base OAI et d'ajouter les paramètres pour le verbe désiré, je pourrais donc ainsi intéroger la base OAI?

En fait, du OAI de ton application SDX vers la même application SDX, je ne suis pas certain que ce soit particulièrement utile.

Quelques références sur l'OAI:
http://www.openarchives.org/OAI/openarchivesprotocol.html (le protocole)
http://www.nongnu.org/sdx/docs/html/others/oai.pdf (OAI et SDX)

- Y'a-til un moyen dans une même application d'afficher des champs d'un document et des champs provenant du OAI pour ce même document? (En fait, avec l'id d'un document, puis-je accèder à l'enregistrement OAI correspondant? Si oui, quelqu'un à un exemple?)

Il faudrait savoir ce que signifie "correspondant" et où il se trouve. Mais bon, de manière générale, si tu as un document avec l'identifiant "toto" dont tu sais que le correspondant dans la base OAI est "toto_oai", alors oui.

Mais je pense de toutes façons que c'est une mauvaise piste...

- Est-ce que l'indexation OAI détecte les documents modifiés et les ré-indexe?

Un moissonneur OAI moissonne un entrepôt OAI à des périodes prédéterminées (CRON) ou à une fréquence prédéterminée. L'entrepôt lui envoit ce qui est modifié.

C'est à l'entrepôt de le savoir donc...

- Est-ce que ce champ (dc:date) est-écrasé lors d'une ré-indexation OAI si le document existait déjà mais qu'il a été modifié?

Si un document est réindexé, alors les informations originales sont perdues, oui.

- Enfin, sur la présentation des résultats... Quelqu'un a-til une idée sur comment procéder pour trier les résultats sur un champ snas toutefois afficher ce champ? Par exemple, nos notice comprenne un élément <titre> et un élément <titre_trie> qui est en fait le titre dont on a enlever les articles (le, la ,un , etc) au début. Donc on veut donc afficher le titre mais trier sur une autre valeur.... Est-ce faisable croyez vous? Est-ce difficilement réalisable? Avec le peu de connaissances que j'ai sur l'architecture de SDX, j'ai de la difficulté à évalué la complexité d'une telle réalisation.

C'est pas un problème. Pour cela, il faut un champ défini ainsi:

<sdx:field name="titre_trie" type="unindexed" brief="true"/>

Vous le remplisser pendant l'indexation avec votre titre pour trier, et vous l'utilisez pour trier, et vous n'avez qu'à ne pas l'afficher.

Il s'agit d'une réponses SDX, pas XToGen.

Je pense que pour progresser il faudrait comprendre une chose: comment sont stockés les notices des "romans"? Comment sais-tu qu'il y a eu un ajout? Comment sais-tu qu'il y a eu une modification?

Ce sont des fichiers? Une base de données?

A bientôt,

Martin Sévigny





reply via email to

[Prev in Thread] Current Thread [Next in Thread]