Page History

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Configurations avancées

Filtrage des fiches indexées à exposer


Dans le fichier properties/repository-filters.xml, il y a possibilité de filtrer les fiches indexées que l'on veut exposer. Ce filtrage s'opère sur n'importe quelle métadonnée indexée (ex. : les entrepôts OAI , les formats de fiches....).

...

En l'absence de filtre, toutes les fiches de métadonnées indexées sont exposées (aucun filtrage n'est effectué).

1. Exemples de filtres communs à tous les formats

Dans la configuration proposée par défaut, on filtre sur l'entrepôt d'origine (md-ori-oai-repository), en ne choisissant d'exposer que les fiches en provenance du workflow (ori-oai-workflow), donc de l'entrepôt local, ce qui correspond à l'entrée dans le bean commonFiltersList ainsi définie :

...

En l'absence de liste ou de filtre de ce type, le filtrage sur les formats se base uniquement sur les Crosswalks (voir "Configuration des formats exposés", plus bas).

2. Exemples de filtres propres à un format

Si on souhaite n'exposer que les fiches LOM dont le titre est "java" ou commence par "info", il faut ajouter dans le bean formatFiltersList l'entrée suivante :

Code Block
<entry key="http://ltsc.ieee.org/xsd/LOM">
	<map>
		<entry key="//lom:general/lom:title/lom:string[starts-with(@language,'fr')]">
			<list>
				<value>java</value>
				<value>info*</value>
			</list>
		</entry>
	</map>
</entry>

Configuration des formats exposés


Les formats exposés sont configurés dans le fichier properties/repository-crosswalks.xml.

Deux types de configurations simples existent : l'exposition d'une fiche à l'identique et l'exposition d'une fiche par transformation XSLT.

Exposition d'un format à l'dentique (IdentityCrosswalk)


Ce type d'exposition ne fait qu'ajouter une couche OAI à une fiche de métadonnées déjà composée dans le format requis.

...

La propriété inPrefix définit quel format d'entrée ce Crosswalk utilise, alors que le nom d'espace et le schema XSD sont ceux de la fiche produite en sortie (ici les deux schémas coïncident).

Exposition d'un format par transformation XSLT


Il s'agit de convertir une fiche d'un format donné vers un format différent, en utilisant une feuille de transformation XSL

...

La propriété inPrefix définit le format d'entrée (ici le LOM). La propriété outPrefix désigne le préfixe du format en sortie, après la transformation (ici le Dublin Core).

Crosswalk composite


Lorsqu'un format à produire en sortie utilise plusieurs formats possibles en entrée, comme c'est le cas pour OAI_DC qui peut provenir aussi bien de fiches LOM que Dublin Core, on configure une troisième sorte de Crosswalk, le Crosswalk composite, qui rassemble plusieurs Crosswalk des types précédents :

Code Block
<bean id="compositeDCCrosswalk"
 class="org.orioai.repository.domain.logic.crosswalk.CompositeCrosswalk">
 <constructor-arg>
 <value>http://www.openarchives.org/OAI/2.0/oai_dc/</value>
 </constructor-arg>
 <constructor-arg>
 <value>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</value>
 </constructor-arg>
 <property name="outPrefix" value="oai_dc" />
 <property name="crosswalks">
 <list>
 <ref bean="DCIdentityCrosswalk" />

 <ref bean="LOMtoDCCrosswalk" />
 </list>
 </property>
</bean>

Configuration des ensembles (sets) à partir d'une classification

(voir Cas d'utilisation : définir des nouveaux sets)

...

  • les 100 premiers codes Dewey
  • le champ "cout"
  • la classification UNIT (commentée donc)
    Code Block
    <bean id="set100DeweyTaxonomy" class="org.orioai.repository.domain.model.set.OaiSetInfos" init-method="init">
    		<property name="vocabularyId" value="dewey_100_taxonomie_regexp"/>
    		<property name="rootTag" value="vdex"/>
    		<property name="termXpath" value="//vdex:term"/>
    		<property name="valueXpath" value=".//orioai:value"/>
    		<property name="setSpecXpath" value="vdex:termIdentifier"/>
    		<property name="setNameXpath" value="vdex:caption/vdex:langstring[@language = 'fr']"/>
    		<property name="vocabularyNameXpath" value="//vdex:vocabName/vdex:langstring[@language = 'fr']"/>
    
    		<property name="xpathSources">
    			<map>
    				<entry>
    					<key>
    						<value>http://ltsc.ieee.org/xsd/LOM</value>
    					</key>
    					<bean class="org.orioai.repository.domain.model.set.OaiSetSourceInfos">
    						<property name="xpath">
    							<list>
    								<value>//lom:classification/lom:taxonPath[lom:source/lom:string='dewey']/lom:taxon/lom:id</value>
    								<value>//lom:classification/lom:taxonPath[starts-with(lom:source/lom:string[starts-with(@language,'fr')],'CDD')]/lom:taxon/lom:id</value>
    								<value>//lom:classification/lom:taxonPath[starts-with(lom:source/lom:string[starts-with(@language,'en')],'DDC')]/lom:taxon/lom:id</value>
    							</list>
    						</property>
    					</bean>
    
    				</entry>
    				<!--entry>
    					<key>
    						<value>http://www.openarchives.org/OAI/2.0/oai_dc/</value>
    					</key>
    					<bean class="org.orioai.repository.domain.model.set.OaiSetSourceInfos">
    						<property name="xpath" value="//dc:dewey"/>
    					</bean>
    				</entry-->
    			</map>
    		</property>
    	</bean>
    

  • Configuration du vocabulaire:
    Dans la première partie du bean, on trouve la propriété vocabularyId qui définit l'identifiant du vocabulaire utilisé, rootTag et valueTag qui désignent les tag XML respectivement de la racine du vocabulaire et celui contenant les valeurs de la catégorie, qui seront comparées aux valeurs trouvée dans la taxonomie des fiches.
    Lorsque qu'une des valeurs d'une catégorie correspond avec celle trouvée dans la fiche, la fiche appartient à l'ensemble de cette catégorie.
    Les propriétés setSpec et setName désignent les éléments XML(tag ou attribut) pour le nom et le code des ensembles générés.
  • Mise en correspondance avec une donnée de la fiche :
    La propriété xpathSources regroupent sous forme de Map la correspondance, pour différents formats de fiche, avec les valeurs définies pour les ensembles de la classification. Ainsi, pour chaque entrée la clé (key) désigne le nom d'espace d'un format de fiche, et les sous-propriétés xpath et luceneFieldName, respectivement le chemin XPATH de la donnée dans la fiche et le nom utilisé dans le module ORI-OAI-indexing pour indexer cette donnée.

Niveau de déboggage


Le niveau de débogage peut être modifié en éditant le fichier properties\log4j.*.properties. Deux modèles de fichiers sont fournis, log4j.prod.propeties en mode production, et log4j.debug.properties en mode débogage.

...