Textes
La consultation des textes se fait aux URLs suivantes :
- consultation d’un fragment identifié sur un document XML :
http://[host]:[port]/[edition]/[document].xml/[id].html - consultation d’un document XML complet
http://[host]:[port]/[edition]/doc/[document].html] - consultation « isolée », pour afficher le texte seul en dehors du site (c’est-à-dire sans menu, barre de navigation, etc., par exemple pour l’afficher dans une pop-up) :
http://[host]:[port]/[edition]/fragment_html/[id].html. L’ajout du paramètre?wrap=trueoffre une consultation dans une page HTML complète (avec appels aux css et js du site) :http://[host]:[port]/[edition]/fragment_html/[id].html?wrap=true
La feuille de transformation appliquée par défaut se trouve dans :
- pour la TEI : [projet]-max/ui/xsl/tei/tei.xsl ;
- pour l’EAD : [projet]-max/ui/xsl/ead/ead.xsl.
La surcharge de cette transformation se fait en rédigeant une XSL nommée text_hook.xsl, placée dans le dossier [projet]-max/editions/[mon-edition]/ui/xsl/[ead ou tei].
Cette feuille de transformation dicte au moteur d’affichage de quelle manière les éléments des documents XML doivent être affichés (dans quel ordre, si certains éléments doivent être masqués, etc.). C’est ce fichier qui permet de régir ce que l’utilisateur verra lorsqu’il consultera, sur MaX, un document XML ou un fragment de document.
Barre de navigation en TEI

Lors de l’affichage du texte d’un fragment en TEI, la barre de navigation (sous forme de liste déroulante) permet de naviguer de fragment en fragment. Un exemple de cette fonctionnalité est présenté dans le corpus de démonstration max_tei_demo.
Les entrées de cette liste déroulante sont par défaut identiques aux entrées de la table des matières du document en cours de consultation. La génération de cette liste déroulante se fonde en effet sur les informations recueillies par le fichier XQuery document_toc.xq. Ce fichier XQuery génère un fichier XML procédural dont le contenu est traité, d'une part, par document_toc.xsl pour générer le sommaire de chaque document (consultable par défaut à l'adresse http://[host]:[port]/[edition]/sommaire/[document].html) et, d'autre part, par nav_bar.xsl pour générer la barre de navigation lors de la consultation du texte d'un fragment.
Par défaut, le fichier nav_bar.xsl se trouve dans : [projet]-max/ui/xsl/tei/nav_bar.xsl.
Il est possible de modifier ce comportement par défaut par une surcharge. Cette surcharge peut se révéler nécessaire à l'affichage de la barre de navigation si le fichier document_toc.xq a lui-même fait l'objet d'une surcharge. Il faut rédiger une transformation XSL nommée nav_bar.xsl et la placer dans le dossier [projet]-max/editions/[mon-edition]/ui/xsl/tei.
Cette transformation XSL recevra en entrée le même arbre XML procédural que [projet]-max/editions/[mon-edition]/ui/xsl/tei/document_toc.xsl, ainsi que le paramètre $project, accompagné de :
- $selectedId : identifiant du fragment en cours de consultation
- $nextArrow : 'true' s’il existe des fragments suivant le fragment courant
- $prevArrow : 'true' s’il existe des fragments précédant le fragment courant
Voir la génération du sommaire d'un document.
Options de lecture

Les options de lecture permettent au lecteur d’afficher ou masquer (via des cases à cocher) certains éléments textuels (les sauts de page ou de ligne de la version manuscrite par exemple). Ces éléments doivent être déclarés dans le fichier de configuration de l’édition : fichier [mon-edition]_config_inc.xml dans le dossier [projet]-max/editions/[mon-edition].
Exemple pour proposer l’option afficher/masquer les sauts de page (éléments <pb/>) et les sauts de ligne (éléments <lb/>) dans un document TEI :
[...]
<textOptions>
<checkboxOptions>
<targetClass>pb</targetClass>
<targetClass>lb</targetClass>
</checkboxOptions>
</textOptions>
[...]
Les éléments TEI <pb> sont transformés en noeud HTML <span> de classe .pb, ils pourront alors être affichés ou masqués depuis l’interface de consultation.
Il est possible de surcharger le fichier i18n.xml afin de spécifier l’option d’affichage. Par exemple :
<entry key="pb">Afficher les sauts de page</entry>
<entry key="lb">Afficher les sauts de ligne</entry>
pb et lb étant les éléments TEI déclarés dans la balise targetClass du fichier [mon-edition]_config_inc.xml dans l’exemple ci-dessus.
Pour les éléments plus complexes, comme l’affichage de certains éléments à la place d’autres, avec l’utilisation de la balise <choice> notamment, des plugins ont été développés. C’est le cas des plugins ajout, abréviation, normalisation, etc. Voir les plugins.
Pied de page
Un pied de page par défaut est configuré dans MaX. Il est appelé dans le template de mise page (voir gabarits, mise en page).
Pour le modifier, il suffit d'ajouter un fichier footer.frag.html dans le dossier [projet]-max/editions/[mon-edition]/fragments (voir Pages HTML statiques).
Alignement
Cette fonctionnalité permet la consultation d’un fragment en deux versions alignées. Chaque couple de fragments alignés doit respecter une nomenclature d’identification : [prefixlang1][identifiant] et [prefixlang2][identifiant]. Les parties de texte qui sont à aligner doivent donc avoir un identifiant identique avec le préfixe de la langue.
Exemple : fr_p1 et lat_p1
La déclaration des documents qui doivent être consultés avec l’alignement se fait dans le fichier de configuration de l’édition mon-edition_config_inc.xml.
Il faut alors préciser le document (attribut @document) ainsi que les préfixes d’identifications utilisés (attributs @first-prefix et @second-prefix) dans les sources. L’attribut @first-prefix correspondant à la langue qui sera affichée en colonne de gauche.
Cela suppose que les noms des deux fichiers ne se distinguent que par leur préfixe de langue :
<alignment document="FR_Ramusio.xml" first-prefix="fr" second-prefix="it"/>

<!-- Le fichier FR_Ramusio.xml -->
<p n="10" xml:id="fr_Ramu_2_5_p1">La terre du Brésil est située au-delà de l’équinoxiale
dans la partie australe vers l’Occident, distante de la ligne diamétrale de 10 degrés de
longitude et, commençant à 3 degrés de latitude australe, elle s’étend jusqu’à 52 degrés
vers le pôle antarctique, où se trouve le cap des onze mille vierges, à l’entrée du détroit
dit de Magellan [...]
<!-- Le fichier IT_Ramusio.xml -->
<p n="10" xml:id="it_Ramu_2_5_p1">La terra del Brafìl è posta oltra l’equinottiale
nella parte australe verso occidente, distante dalla linea diametrale gradi dieci di
longitudine, & cominciando da tre gradi di latitudine australe corre fino
à cinquantadua verso il polo antartico, doue è il capo delle vndici mila vergini nell’entrare
del stretto detto di Magallanes [...]
Les textes alignés sont consultables à une URL spécifique :
http://[host]:[port]/[edition]/[document_avecPrefixe].xml/[prefixe1]_[idFragment]/[prefixe2]_[idFragment].html
Par exemple :
http://localhost:8000/mon-edition/FR_Ramusio.xml/fr_Ramu_2_5_p1/it_Ramu_2_5_p1/.htmlhttp://localhost:8000/max_tei_demo/demo_align_fr.xml/fr.c1/lat.c1.html
Récupération et affichage de fragments hors contexte
Lors de la consultation d’un fragment, il peut s’avérer nécessaire d’afficher du contenu issu d’un ou plusieurs autres fragments.
L’ajout d’une XQUERY nommée [projet]-max/editions/[mon-edition]/xqtext_hook.xq offre cette fonctionnalité. Celle-ci sera automatiquement exécutée lors de la consultation d’un fragment ou d’un document complet.
Il est également possible d’intégrer une transformation XSL au sein de cette fonction XQUERY.
Cette fonction reçoit les paramètres $baseURI, $dbPath, $project et $doc.
Exemple :
declare variable $baseURI external;
declare variable $dbPath external; (:path du document dans la db:)
declare variable $project external; (: id du projet :)
declare variable $doc external; (: nom du document :)
let $document := doc($dbPath || '/' || $doc)
return base-uri($document)
Marquage d’occurrences et focus (pour des sources en TEI)
Il est possible de mettre en évidence les occurences d’une chaîne de caractères et/ou de mettre le focus sur un fragment identifié d’une page à l’aide des paramètres search et focus pour les 2 URLs (ou routes) suivantes :
- consultation d’un fragment identifié :
http://[host]:[port]/[edition]/[document].xml/[id].html - consultation d’un document complet :
http://[host]:[port]/[edition]/doc/[document].html
Le marquage d’occurrences se fait par l’ajout du paramètre search :
http://[host]:[port]/[edition]/[document].xml/[id].html?search=[texte recherché]
Le focus sur un fragment identifié se fait par l’ajout du paramètre focus :
http://[host]:[port]/[edition]/[document].xml/[id].html?focus=[identifiant fragment]
Il est possible de combiner les deux paramètres :
http://[host]:[port]/[edition]/[document].xml/[id].html?search=[texte recherché]&focus=[identifiant fragment]