Récupérer les infos du teiHeader quand on est dans un fragment xml
Salut Jérôme !
Quand on est sur une route de type :
%rest:path("/{$project}/{$routeDoc=.*\.xml}/{$id}")
, seules les données contenues dans la div de l'identifiant concerné sont récupérées.
Or, nous avons souvent besoin de ces informations qui ne sont disponibles qu'à cet endroit (le nom de l'auteur scientifique, des informations sur les mains des manuscrits, etc.).
J'ai bidouillé un truc sur une branche qui fonctionne, mais je ne suis pas sûre que ce soit acceptable pour Max.
En gros, j'ai rajouté dans la route (dans max.xq) une variable $teiHeader qui permet de récupérer le teiHeader, grâce à une fonction placée dans le fichier max_api.xqm :
let $teiHeader := max.api:getXMLteiHeader($dbPath, $routeDoc)
Ce qui me permet d'ajouter dans le xml à afficher une <div id="teiHeader">
:
let $xml := <div id="wrap-{$id}"><div id="teiHeader">{$teiHeader}</div>{max.api:getXMLByID($dbPath, $id)}</div>
J'ai également modifié la tei_core.xsl pour qu'elle masque par défaut cette div :
<xsl:template match="div[@id='teiHeader']"></xsl:template>
J'ai mis la branche sur le git si tu veux voir : ag/recuperationHeader