Dilib, module Tei, classe TeiHandler : Différence entre versions
imported>Jacques Ducloy (→Utilisation en lecture) |
imported>Jacques Ducloy m (1 révision importée) |
(Aucune différence)
|
Version actuelle datée du 16 juin 2017 à 19:50
Module Tei |
La classe TeiHandler contient un ensemble de fonctions C pour faciliter la création d'un document TEI ou la manipulation de ses éléments.
Liste des modules Dilib
Module Tei
|
Utilisation en création
En création, les fonctions opèrent sur un seul document pour lequel des points d'entrée sont prédéfinis.
Le fichier TeiHandler.h
Il contient un ensemble de pointeurs.
Certains pointeurs sont liés à un document et sont uniques.
SxmlNode *Tei_root;
SxmlNode *Tei_header;
SxmlNode *Tei_front;
SxmlNode *Tei_back;
De même, pour le header :
SxmlNode *Tei_fileDesc;
SxmlNode *Tei_profileDesc;
SxmlNode *Tei_publicationStmt;
SxmlNode *Tei_textClass;
SxmlNode *Tei_titleStmt;
SxmlNode *Tei_seriesStmt;
SxmlNode *Tei_back_listBibl;
SxmlNode *Tei_sourceDesc;
Dans ce header, des éléments répétables qui peuvent se retrouver dans la bibliographie désignent en fait ceux qui figurent dans le header ;
SxmlNode *Tei_biblStruct;
SxmlNode *Tei_analytic;
SxmlNode *Tei_series;
SxmlNode *Tei_seriesImprint;
SxmlNode *Tei_monogr;
Tei_series
Le pointeur Tei_series, pointe pour un document sur la première occurrence d'un élément series.
Il lui correspond un pointeur Tei_seriesImprint sur l'élément imprint correspondant.
Fonction TeiAppendIdno
SxmlNode *TeiAppendIdno(char *type, char *value)
Cette fonction retourne un pointeur sur l'élément idno créé et ajouté.
Fonction TeiSetIdnoRbid
SxmlNode *TeiSetIdnoRbid(char *base, char *identifier)
- Exemple d'emploi
Adaptation de l'élément id d'une notice ArXiv.
<id>http://arxiv.org/abs/1102.4151v1</id>
if ((idArxiv=SxmlGetFirstChildByTagName(entry,"id")))
{
char *beginId;
beginId=strstr(SxmlLeafText(idArxiv), "abs/");
if (beginId) TeiSetIdnoRbid("ArXiv", beginId+4);
}
<idno type="RBID">ArXiv:1102.4151v1</idno>
Auteurs
- Article principal : Dilib, module Tei, classe TeiHandler, auteurs.
Utilisation en lecture
SxmlNode *TeiHandlerInit(SxmlNode *docInput)