Classes, types et champs
L’ensemble principal d’objets est celui constitué par les entités pour lesquelles on peut définir plusieurs classes. Par exemple pour le ME de revues.org, une classe publications (regroupant les conteneurs dans lesquels on pourra ajouter du contenu) et une classe textes. Chaque classe permet de définir des champs communs à tous les éléments de la classe : par exemple pour la classe textes, un champ titre, sous-titre, …
Ces classes peuvent être différenciées par type : pour la classe textes, un type éditorial, compte-rendu, article. Les types peuvent être affichés avec des templates distincts ou bien dans un template commun à toute la classe, on définit des particularités par type
Puis des champs, ils doivent être categorisés dans un groupe. Exemple, le groupe des titres contient 4 champs surtitre, titre, soustitre, altertitre. Chaque champ a un type : texte, multi-lingue, … Un style est associé à chaque champ : utilisé dans le modèle de document pour styler le texte et être interprété par servoo (il peut y avoir plusieurs styles pour un même champ).
info texte multi-lingue avec les balises
image : lien vers le fichier contenant l’image en dur
date : lodel comprend des dates sous différents formats (27 juin 2006 ou 27/06/2010) qu’il convertit au format mysql.
langue : les langues disponibles sont définies à l’installation de lodel
relation : relation entre deux entités, par exemple pour associer des textes dans une langue d’origine avec la version traduite, deux urls distinctes (NB : le type interne sera entities)
Une classe est définie par ses champs et par ses types : par exemple pour la classes textes, le type editorial, article, actualite, compterendu… A chaque type peut être associé un fichier template. Mais la multiplication des templates peut compliquer la maintenance.
Par type :
- un identifiant
- un nom utilisé dans l’interface
- le mode de création
- le statut par défaut à la publication est prêt à publier dans notre cas
- le type peut être public pour un commentaire (utilisation de lodel comme moteur de blog)
- template
- hiérarchie possible, contenant…
Il existe deux autres classes d’index et de d’index de personnes
Une classe d’index peut contenir des champs et des types, par exemple des mots-clés, des indexes thématiques ou géographiques. On associe également des styles à ces types, reconnus dans le document Word. Deux fichiers templates : l’un pour lister les entrées d’index pour ce type (pour afficher tous les mots-clés, dans notre cas entrees.html affiche toutes les entrées d’index) et l’autre affiche les éléments relatifs à l’entrée particulier (fichier entree.html).
Nous avons une autre classe d’index pour pouvoir définir d’autres champs, dans notre cas cette classe est utilisé pour gérer les licences et renvoyer sur l’url et l’icône correspondant.
Ces classes d’index seront associées à des entités, on ne peut pas indexer des indexes.
Classes de personnes, un autre ensemble avec une ou plusieurs classes : dans notre cas la classe auteurs. Une partie décrit l’auteur lui-même et une autre est relative à la relation entre l’auteur et le document auquel il est rattaché. Un auteur peut écrire plusieurs articles ou changer d’affiliation. Des champs décrivent l’auteur et le document dans un contexte. Une seule classe auteurs mais plusieurs types (auteur, traducteur, auteuroeuvre, …). Le fait d’avoir plusieurs types nous permet de manipuler des indexes différents, par types.
Insérer image d’un auteur en bas d’article avec la description
Au niveau des données
insérer image du MCD
en rouge, ce qui est structurel indépendant du ME;
entities
relations : jointures entre toutes les tables
persons : les infos sur les index des personnes
entries : infos sur les indexes
les jonctions se font via la table relations.
en vert et bleus, les tables dépendantes du ME que l’on va créer : à chaque classe, correspond une tables, autant de tables que de classes d’entités. Idem pour les entrées d’index, une table par classes, on retrouve les tables correspondant aux classes indexes et indexavances. Idem pour la classe auteurs. La description se fera dans entities_auteurs.
La table relations est très importante : champs trucs.
nature P=parent (relation avec id1=parent, id2=parent) permet de décrire les relations hiérarchiques entre entités
E=entries : relation id1=entité, id2=entréd ‘index
G=gens : relation entre entité et personne
Quand on ajoute un champ de type relation, par exemple tout à l’heure traduction, on retrouve ces entités avec nature=’traduction’
La table relation contient toute les relations associées à une entités : afficher un exemple mysql.
entities contient des informations structurelles communes à toutes les entités : id, idparent, identifier, idtype (un entrée de la table types), rak (défini l’ordre d’affichage), …
Compléments
Styles internes
Ce sont des éléments balisés qui vont être utilisés dans des champs. C’est propre à ce qui est importé via Servoo. Exemple : blabla avec citation qui est transformé avec une balise <p class=”blockqutote”>. Permet d’identifier un élément particulier dans un champ.
Une citation peut être dans plusieurs champs : d’où une option Environnement, il faut décrire dans quel champ on balisera cette objet. Le plus simple est texte, mais pour mettre une citation aussi dans les annexes, on choisit l’option “style précédent”. Avec “style de suite”, le style est associé au paragraphe suivant. Par défaut, si on n’indique rien dans la converison ?, il met un style p class=”?”.
Ce sont des style de paragraphes utilisés à l’intérieur d’un ….
Un style de caractères blabla (disponible uniquement dans opentext).
OpenEdition vous propose de citer ce billet de la manière suivante :
Jean-François Riviere (22 octobre 2018). Le modèle éditorial dans Lodel. Lodel. Consulté le 4 octobre 2024 à l’adresse https://doi.org/10.58079/r0io