sdx-users
[Top][All Lists]
Advanced

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

Re: [sdx-users] sdxworld - projet.dtd


From: Pierrick Brihaye
Subject: Re: [sdx-users] sdxworld - projet.dtd
Date: Thu, 16 Jan 2003 15:07:17 +0100
User-agent: Mozilla/5.0 (Windows; U; Win98; fr-FR; rv:1.0.1) Gecko/20020823 Netscape/7.0

Re,

Emmanuel Bégué a écrit:

Si j'ai bien compris, une application sdx2 utilise un
seul fichier de configuration, application.xconf

Oui.

Cependant, on peut ajouter aussi 2 autres fichiers qui, pour moi, relèvent aussi de la configuration :

- la ou les feuilles d'indexation : indispensable(s) !
- la sitemap (dans le répertoire au dessus) : elle gère la façon dont le client interagit avec le serveur (mais qui n'agit pas sur le SDX à prorement parler).

> qui définit les bases de document indexables par cette
application

Mmmh... un base de documents doit en fait être considérée comme une base d'index (avec un "s"). La seule raison d'être d'une base de documents est de permettre d'interroger des documents et, le cas échéant, de les retourner à l'utilisateur.

Pour être clair : une base de documents n'est pas obligée de stocker des documents (v. plus bas), mais elle est obligée de stocker leurs index (quoique ça soit un peu plus compliqué que ça). Pour faire encore plus clair : une base de documents est un annuaire.

et pour chacune:
- le repository

Oui, *mais* on peut reporter le/les repositories au niveau de l'application, ce qui permet de stocker au même endroit des documents qui seront indexés différements et donc, qui seront normalement dans des bases différentes.

(Lucene)

Ou JDBC...

> qui va stocker les index

Non : ce n'est pas le Repository qui stocke les index, mais la base. A ce jour, seuls des index Lucene sont supportés.

et  éventuellement une copie des documents

Oui.

- l'analyser qui est un fichier de paramètres utilisé
par Lucene pour parser les documents (quels mots ignorer,
etc.)

Oui.

- les champs (fields) à traiter et à indexer (ou à ne
pas indexer)

Oui. Personellement, je préfère appeler ces "champs" des "index". Si l'on considère Lucene comme une DB, le terme "champ" est approprié. Si l'on considère Lucene comme une sous-couche SDX, appelons-les "index" :-)

- la feuille de style XSLT qui transforme les documents
bruts à indexer en documents indexables.

Elle fait d'autres choses :

- elle affecte l'id au document (indispensable !)
- elle peut affecter des documents attachés

Confirmez-vous ce qui précède?

Dans les grandes lignes, c'était ça :-) Il est important de distinguer l'aspect stockage/référencement des documents (du ressort des repositories) et l'aspect indexation des dits documents (du ressort de la base). Je reconnais qu'il peut y avoir une confusion à cause du fait que Lucene peut être utilisé 2 fois en même temps :

- pour stocker les index
- pour stocker les métadonnées système des documents

Ce que je ne comprends pas encore très bien, c'est le
rôle de "projet.dtd": les documents de sdxworld dépendent
de cette dtd AVANT transformation (ligne d'ailleurs commentée);

Oui : ça permet une ultime vérification sur le formalisme du document (et, a fortiori, de vérifier qu'on a du XML bien formé, bien encodé... ;-)

on doit sans doute en déduire que projet.dtd est spécifique
à sdxworld
> (et même plus précisément à sdx:documentBase id="xml")

Que oui ! Personnellement, j'aurais préférer appeler cette base "projets" (on en a discuté dans [sdx-developpers]). Pour moi, ça prête à confusion : on n'a l'impression que la base "xml" va savoir stocker tout document XML et que la base "html" ne saura stocker que du HTML.

et n'a pas spécialement de raison d'être dans une autre
application sdx?

Aucune :-)

Ce que je ne comprends pas non plus, c'est comment sdx
sait de quelle base de document relève tel document au
moment de son indexation

Premier point : quand on "charge" un document dans SDX (via l'action <sdx:uploadDocument>), on fait 2 choses :

- on charge physiquement le document dans un repository. Variante, on référence le document (dans le cas d'utilisation d'un URLRepository).
- on indexe le document dans la base

Ensuite, l'action <sdx:uploadDocument> prend plusieurs arguments, parmi lesquels :

base (ou sa variante baseParam...)
repo (idem : voir le topo sur le passage de paramètres ; celui dans la section sur le multilinguisme est très pédagogique)

Si ces arguments ne sont pas spécifiés, ce sont les valeurs par défaut qui sont assumées. L'attribut "default" du fichier de configuration prend donc tout son sens ;-)

A bientôt,

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:address@hidden





reply via email to

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