Titre Fenetre
Contenu Fenetre
Connexion
  • Se souvenir de moi
J'ai oublié mon mot de passe
BDGest'Arts, BDGest'ival, c'est parti !
Image Image Image

Rationalisation des Genres dans la BEL

Toutes l'actualité du site http://www.bdgest.com. C'est le forum à consulter pour se tenir informé de toutes les nouveautés et fonctionnalités régulièrement ajoutées au site.

Re: Rationalisation des Genres dans la BEL

Messagede Nirm » 25/07/2020 14:34

Message précédent :
Keorl a écrit:Mon premier jet visait essentiellement à trier l'existant plutôt qu'à bâtir une liste de genres toute neuve.

:ok:

Je pense qu'on doit vraiment se limiter sur les genres en collant aux autres arts, pour garder de la cohérence et éviter de s'éparpiller.
Des choses comme action, ce n'est pas un genre. C'est un élément, présent dans les récits historiques ou d'aventures par exemple.
À mon sens, un genre respecte des codes narratifs, une construction.
Au cinéma, le western est un thème, le western spaghetti un genre.
Il faudrait réussir à se mettre d'accord sur certains axiomes pour identifier facilement un ou quelques genres pour chaque album.

Après effectivement, la cible (adulte, jeunesse, etc) et le thème (western, piraterie, aviation, etc) seraient des champs/éléments à ajouter mais autant ne pas s'encombrer avec.
Tu débarques ? Suis le guide
Avatar de l’utilisateur
Nirm
Grand Maître BDGestiste
Grand Maître BDGestiste
 
Messages: 23911
Inscription: 31/05/2014
Localisation: Bdx
Age: 47 ans

Re: Rationalisation des Genres dans la BEL

Messagede The Maze Echo » 25/07/2020 14:46

Il faudrait aussi renommer le champ "Style" en "Genre", dans le formulaire de recherche de la BeL, pour éviter les confusions.

Keorl a écrit:Une fois les genres rationalisés et le lien série-genres (1-N avec des ID) en place, la recherche se ferait avec une liste déroulante et non par saisie de texte, donc le problème jeu/jeunesse disparait automatiquement.

Il y a déjà une liste déroulante pour le champ Style dans la recherche, avec saisie de texte et auto-complétion pour faciliter la recherche. Le problème ne vient pas de l'interface, mais comme tu l'as expliqué au départ, du fait que l'information est actuellement une chaîne de caractères, plutôt qu'une liste de pointeurs.
Mon propos sur les caractères spéciaux est à étendre à l'ensemble du formulaire de recherche, pas seulement pour les genres.
Avatar de l’utilisateur
The Maze Echo
BDGestiste
BDGestiste
 
Messages: 4104
Inscription: 03/07/2002
Localisation: F-40 Mont de Marsan
Age: 54 ans

Re: Rationalisation des Genres dans la BEL

Messagede The Maze Echo » 25/07/2020 14:52

Nirm a écrit:Je pense qu'on doit vraiment se limiter sur les genres en collant aux autres arts, pour garder de la cohérence et éviter de s'éparpiller.
Des choses comme action, ce n'est pas un genre. C'est un élément, présent dans les récits historiques ou d'aventures par exemple.
À mon sens, un genre respecte des codes narratifs, une construction.
Au cinéma, le western est un thème, le western spaghetti un genre.
Il faudrait réussir à se mettre d'accord sur certains axiomes pour identifier facilement un ou quelques genres pour chaque album.

Et bien justement, au cinéma, il y a bien un genre "film d'action", distinct du "film d'aventure". La différence, je pense, se fait sur quelle facette du film est porté l'accent : Indiana Jones => aventure (tribulations, dépaysement...) ; Fast & Furious => action (braquages, courses de voitures), ça peut se dérouler n'importe où, le lieu n'est pas essentiel, l'action, si.

Après, ma bibliothèque est organisée et classée par grands genres : Aventure - Action, Guerre - Espionnage - Polar, Fantasy, SF, Western, Adulte, Aviation - Automobile, Comique - Jeunesse. ;)
Avatar de l’utilisateur
The Maze Echo
BDGestiste
BDGestiste
 
Messages: 4104
Inscription: 03/07/2002
Localisation: F-40 Mont de Marsan
Age: 54 ans

Re: Rationalisation des Genres dans la BEL

Messagede Nirm » 25/07/2020 15:48

Le cinéma n'est pas l'art auquel je pensais, mais en effet ton exemple est pertinent.
Après je réfléchis avec les titres qui me viennent et, même si je ne doute pas que cela existe, il ne m'en venait pas spontanément qui puissent être classés dans ce genre.
Tu débarques ? Suis le guide
Avatar de l’utilisateur
Nirm
Grand Maître BDGestiste
Grand Maître BDGestiste
 
Messages: 23911
Inscription: 31/05/2014
Localisation: Bdx
Age: 47 ans

Re: Rationalisation des Genres dans la BEL

Messagede Keorl » 25/07/2020 23:29

Le soucis avec la suppression de choses comme "Action" (outre le débat pour savoir si ça compte ou non), c'est le travail pour les correcteurs. Il y a 999 albums concernés (je ne sais pas combien ça fait en séries à reclasser lorsqu'elles n'ont pas déjà au moins un autre genre).
Ma démarche était de permettre un plan de passage de la situation actuelle vers une situation de genres "unitaires" avec lien 1-N, de la manière la plus fluide possible en limitant au maximum le travail initial non seulement pour les correcteurs (n'agir que sur quelques genres à la marge) mais aussi pour le Chef (ne pas avoir à modifier *tous* les systèmes qui lisent ou écrivent le genre en une fois, je proposerais le plan pour ça dans un futur post). Ceci dans le but de permettre une telle migration sans qu'un mur de travail pour les uns ou les autres ne soit un obstacle amenant à son abandon. Elle implique donc de conserver un maximum d'équivalents pour les genres déjà existants dans la BEL (soit parce qu'on le conserve, soit parce qu'il est entièrement fusionné dans un autre).

Ceci n'empêche pas dans un second temps de consolider, si ça s'avère nécessaire (je n'en suis pas convaincu, mais tu l'es, je parle donc de cette hypothèse). On aurait donc une première liste d genres dérivée de l'existant et permettant une migration à 99.9% par script. Puis une seconde liste "cible finale". Si par exemple "action" contient beaucoup de BD et qu'on décide de l'éliminer à terme, on laisse les correcteurs modifier les séries concernées tranquillement quand ils tombent dessus, et on enlève le genre une fois qu'il est (presque) vide.


Cela dit, je pense que "Action" a toute sa place en tant que genre. Il existe effectivement au cinéma (tout comme Western, que je suis choqué de voir dans ta liste de non-genres). Ta définition du "genre" me semble très (trop) restrictive et implique un big bang où on créé toute une classification avec un tas de critères distincts (à refléter partout les éléments de l'écosystème bdgest, de la bel aux logiciels) et donc incompatible avec toute idée de faire passer le changement en douceur. Un de tes arguments est que "action" va souvent de paire avec autre chose : ne perdons pas de vue que le nouveau système a pour but de permettre à une série d'avoir plusieurs "genres" à la fois, il serait donc parfaitement possible (et souhaitable quand applicable) que toute série où l'élément "action" se passe dans un contexte historique ou aventure (pour reprendre tes exemples) ait aussi ces genres.
Si on part sur un définition strictissime de "genre" au point de ne plus y mettre que des choses mutuellement exclusives, tout ce topique ne sert à rien : on donne une liste de genres acceptables aux correcteurs, et les genres "composites" disparaitront d'eux même ...
Keorl
BDGestiste
BDGestiste
 
Messages: 2816
Inscription: 17/11/2017
Localisation: Grenoble
Age: 36 ans

Re: Rationalisation des Genres dans la BEL

Messagede Keorl » 26/07/2020 09:01

Plan technique

Où l'on détaille une manière de procéder qui évite de tout casser d'un coup.

Existant - hypothèse
N'ayant pas la BDD de la BEL sous les yeux, je ne peux que spéculer. À l'usage, on a l'impression d'avoir ceci :

table SERIE
- serie_id integer
- genre varchar (=> affiché et utilisé pour la recherche)

table GENRE (je suppose son existence car on trouve des genres qui ont 0 séries)
- genre varchar (=> utilisé pour l'auto-complétion)

Schéma transitoire
table SERIE
- serie_id integer
- genre varchar2 (conservé pour ne pas casser le code qui, lui, n'a pas à changer partout)

table GENRE
- genre varchar (idem)

table GENRE2
- genre_id smallint auto increment
- libelle varchar
- parent integer
- (optionnel) utilisable_seul tinyint default 1 (si 0, le genre est obligé d'être utilisé en même temps qu'un autre avec 1, par exemple Jeunesse doit être associé à un vrai genre)
- (optionnel) transitoire_migration tinyint default 0 (si 1, genre conservé de l'ancien système pour pouvoir mettre les séries quelque part, devra être corrigé petit à petit sur les séries concernées jusqu'à ce qu'on puisse le supprimer. Par exemple "Action" si on se range à l'avis de Nirm)

table SERIE_GENRE
- serie_id integer (FK SERIE.serie_id)
- genre_id smallint (FK GENRE2.genre_id)

table GENRE_MIGRATION
- genre varchar
- genre_id smallint

Logique de migration des données
1) extraction du contenu de GENRE (à priori c'est le fichier genres_bdgest_full.txt de mon premier post, mais je ne peux pas être 100% sûr)
2) création d'un script pour remplir GENRE2 avec les nouveaux genres et leur hiérarchie
3) création d'un script pour remplir la correspondance entre les anciens et nouveaux genres dans GENRE_MIGRATION. Chacun des 870 anciens genres (étape 1) doit avoir au moins une ligne dans cette table (plusieurs s'ils avaient des virgules, exception 0 pour les genres éliminés)
4) script pour remplir SERIE_GENRE (une simple jointure entre la table SERIE et la table GENRE_MIGRATION). Les quelques séries n'ayant rien (car genre supprimé) voient leur genre "texte" préfixé de "A CORRIGER"
5) script de recalcul du genre "texte" dans la table serie (= concaténation par ordre alphabétique + virgules des GENRE2.libelle associés à la série au travers de SERIE_GENRE)
6) script de reconstruction de l'ancienne table GENRE à partir de SERIE.genre (moins les "A CORRIGER") => l'auto-complétion dans la recherche ou la création de série sera bonne
7) script de reconstruction de GENRE_MIGRATION : on n'a plus besoin de la correspondance des anciens genres, par contre on va conserver une correspondance entre les libellés type "ancien système" générés avec les genres du nouveau (étapes 5 et 6) et le(s) genre_id correspondant(s) (on verra au § suivant à quoi ça sert)

Et on dit aux gentils correcteurs qu'on a X séries (pas plus de quelques dizaines si on a bien fait les choses) "A CORRIGER".

Logique de fonctionnement transitoire
C'est le cœur de ma stratégie : tous les systèmes qui lisent ou écrivent dans le schéma actuel ne doivent y voir que du feu, le temps de les adapter un par un tranquillement.
On va utiliser des TRIGGER sur la base de données (un petit bout de code qui est exécuté automatiquement lorsque certaines choses se produisent).

1) lors de la mise à jour ou insertion de SERIE.genre : découpage automatique sur les virgules pour remettre dans l'ordre alphabétique. Si le genre est connu dans GENRE, on utilise GENRE_MIGRATION pour renseigner automatiquement SERIE_GENRE. Si le genre est inconnu mais bien formé (nouveau combo valide : des virgules séparent des genres qui sont tous dans GENRE2), création automatique dans GENRE, GENRE_MIGRATION, SERIE_GENRE. Si le genre ne peut pas être ramené au nouveau système, on le préfixe de "A CORRIGER" et il n'est inscrit que dans SERIE.genre
2) lors d'une insertion dans GENRE. Si c'est actuellement fait par un trigger sur SERIE.genre, on n'a qu'à désactiver ce trigger existant. Si c'est fait indépendamment par le logiciel, on créé un nouveau trigger : si le genre inséré n'est pas valide pour le nouveau système (liste par ordre alphabétique de genres qui sont dans GENRE2), on annule l'insertion.
3) lors d'une insertion dans SERIE_GENRE : recalcul du genre "ancien format" et mise à jour dans SERIE.genre (+ insertion dans GENRE au besoin). Évidemment on sécurise le code pour éviter une boucle infinie avec le (1)

Adaptation des systèmes
À terme, tout ce qui lit ou écrit dans SERIE.genre et GENRE doit être adapté pour ne plus utiliser que SERIE_GENRE et GENRE2 directement.

La recherche et la création de série montrent une paire de listes déroulantes fabriquées à partir de GENRE2 (1ere liste = genres sans parent, 2e liste = vide + genres associés à la sélection de la 1ere), sans entrée de texte ni autocomplétion. Possibilité de créer un genre (alors inséré dans GENRE2) lors de la création d'une série.
Tout affichage du genre montre le GENRE2.libelle de chacun des genres associés à la série par SERIE_GENRE. Dans le classement, ça devient autant de liens au lieu d'un seul.

Une fois tous les systèmes migrés (plus aucune référence à la colonne SERIE.genre ou à la table GENRE dans le code bdgest/site/BEL) : suppression des tables GENRE et GENRE_MIGRATION, de la colonne SERIE.genre, et des 3 triggers.
Keorl
BDGestiste
BDGestiste
 
Messages: 2816
Inscription: 17/11/2017
Localisation: Grenoble
Age: 36 ans

Re: Rationalisation des Genres dans la BEL

Messagede Nirm » 26/07/2020 12:54

Keorl a écrit:Ceci n'empêche pas dans un second temps de consolider, si ça s'avère nécessaire (je n'en suis pas convaincu, mais tu l'es, je parle donc de cette hypothèse). On aurait donc une première liste d genres dérivée de l'existant et permettant une migration à 99.9% par script. Puis une seconde liste "cible finale". Si par exemple "action" contient beaucoup de BD et qu'on décide de l'éliminer à terme, on laisse les correcteurs modifier les séries concernées tranquillement quand ils tombent dessus, et on enlève le genre une fois qu'il est (presque) vide.


Cela dit, je pense que "Action" a toute sa place en tant que genre. Il existe effectivement au cinéma (tout comme Western, que je suis choqué de voir dans ta liste de non-genres). Ta définition du "genre" me semble très (trop) restrictive et implique un big bang où on créé toute une classification avec un tas de critères distincts (à refléter partout les éléments de l'écosystème bdgest, de la bel aux logiciels) et donc incompatible avec toute idée de faire passer le changement en douceur. Un de tes arguments est que "action" va souvent de paire avec autre chose : ne perdons pas de vue que le nouveau système a pour but de permettre à une série d'avoir plusieurs "genres" à la fois, il serait donc parfaitement possible (et souhaitable quand applicable) que toute série où l'élément "action" se passe dans un contexte historique ou aventure (pour reprendre tes exemples) ait aussi ces genres.
Si on part sur un définition strictissime de "genre" au point de ne plus y mettre que des choses mutuellement exclusives, tout ce topique ne sert à rien : on donne une liste de genres acceptables aux correcteurs, et les genres "composites" disparaitront d'eux même ...

Je pense que c'est la bonne démarche et mon propos était plutôt de discuter des genres, à terme.
Je suis aussi convaincu qu'il ne faut pas de classifications exclusive, mon avis étant juste que certains genres actuellement ne sont pas des genres de BD (comme actions, mais encore une fois j'ai sûrement une vue limitée à ce que je lis et/ou possède).

PS : bravo pour l'investissement en tout cas.
Tu débarques ? Suis le guide
Avatar de l’utilisateur
Nirm
Grand Maître BDGestiste
Grand Maître BDGestiste
 
Messages: 23911
Inscription: 31/05/2014
Localisation: Bdx
Age: 47 ans

Re: Rationalisation des Genres dans la BEL

Messagede nubuc » 26/07/2020 22:19

The Maze Echo a écrit:
Edhral a écrit:j'ai volontairement ajouté l'accent à tous les "erotique" sur lesquels je tombe, vous ne me ferez PAS harmoniser dans l'autre sens qui est une faute d'orthographe car en français les majuscules s'accentuent, hé oui ;

:hug:

Je suis très heureux de voir que je ne suis plus le seul à me battre pour cela. Je n'ai pas passé 15 ans pour rien à corriger la BEL et ces accents sur majuscule.
[:flocon:2] [:flocon:2]
En ces temps difficiles, il convient d'accorder notre mépris avec parcimonie, tant nombreux sont les nécessiteux. (Chateaubriand).

Mes ventes sont ici !
Avatar de l’utilisateur
nubuc
Maître BDGestiste
Maître BDGestiste
 
Messages: 18897
Inscription: 20/12/2002
Localisation: Dans les Corbières
Age: 74 ans

Re: Rationalisation des Genres dans la BEL

Messagede tchouckitchouck » 10/08/2020 11:42

Et the Chef Quoi qu'il en dit ?
Avatar de l’utilisateur
tchouckitchouck
BDGestiste
BDGestiste
 
Messages: 3011
Inscription: 08/01/2003
Localisation: Poitiers
Age: 54 ans

Re: Rationalisation des Genres dans la BEL

Messagede Keorl » 12/08/2020 22:42

Concernant les notions qui sont actuellement fondues dans le "genre" sans en faire réellement partie. Je pense en particulier au cas des publics cibles (jeunesse/adulte/...).
Nous avons parlé ces 2 dernières pages de les éliminer du genre, ou de les conserver en tant que genres mais en obligeant à les utiliser en combinaison avec un "vrai" genre (ce qui est facile du fait que les séries pourraient avoir plusieurs genres). L'autre hypothèse étant de carrément créer de nouveaux champs (= plus de boulot pour le chef et de chamboulements que prévu, puisque j'essaie de garder ça au minimum).

OR ... je viens de réaliser qu'il existe déjà un champ, qui est actuellement utilisé de manière pour le moins aléatoire : les mots-clés ! Le public cible pourrait donc être transféré directement dans les mots-clés (ce qui serait fait avec les scripts de migrations détaillés plus haut). Le défaut par rapport au fait de tout garder dans les genres : pas de top100 jeunesse.

tchouckitchouck a écrit:Et the Chef Quoi qu'il en dit ?

Excellente question !
Keorl
BDGestiste
BDGestiste
 
Messages: 2816
Inscription: 17/11/2017
Localisation: Grenoble
Age: 36 ans

Précédente

Retourner vers Actualité du site

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités