Patrice Dargenton présente :

DVDClass

Le logiciel pour estimer les scores imdb des films DVD

 

mise à jour : 07/01/2007

 

Liens rapides. 1

Présentation. 2

Qu'apporte DVDClass de plus qu'imdb ?. 2

DVDClass, c'est quoi ?. 2

Comment ça marche ?. 3

Exemples de classement 3

Autres classements. 4

Calcul d'affinités. 4

Pronostic de l'intérêt d'un film.. 4

Pourquoi seulement les films DVD ?. 5

Quelques sites de notation. 5

Echange de notations entre votants. 5

Mode d'emploi 6

Voter avec DVDClass. 6

Installation. 6

Système d'archivage avec DBToFile. 6

Désinstallation. 7

Prochainement 7

Remarques diverses. 7

Touches de raccourci pour entrer les données au clavier (facultatif) 7

Champs à saisir 8

Problème des doublons dans les titres des oeuvres. 8

Echange de notations via DVDClass.xml 9

Divers. 9

Information. 9

Plan de la base de données DVDClass. 9

Structure de la base de données DVDClass. 10

Historique des versions. 13

Liens Web. 14

 

 

Liens rapides

Html/ClassFilmDVDPatriceNouv.html : mes nouveautés

Html/ClassFilmDVDPatrice.html, Html/ClassFilmDVDPatriceAn.html

Html/ClassFilmDVDIMDB.html, Html/ClassFilmDVDIMDBAn.html

Html/ClassMusiqueAlbumPatrice.html, Html/ClassMusiqueAlbumPatriceAn.html

Html/ClassLivrePatrice.html

Html/DVDClass.xml, DVDClassData.zip (Données de mise à jour : 300 Ko)

 

Présentation

Qu'apporte DVDClass de plus qu'imdb ?

Pourquoi DVDClass alors qu'il y a déjà imdb (The Internet Movie DataBase), qui comptabilise les votes des internautes ?

A terme, l'objectif de DVDClass est fondé sur le principe des communautés d'opinion, qui est le suivant : admettons que j'aie une bonne idée de mes 100 films préférés, il y a des chances pour que, quelque part sur la planète, un certain nombre de personnes ont aussi un certain nombre de leurs films préférés en commun avec les miens : nous faisons donc plus ou moins partie de la même communauté d'opinion. Pour déterminer cela, on se base sur un calcul d'affinité entre chaque votant un à un, il s'agit simplement de l'écart moyen entre les notations sur les films en commun. Là où cela devient intéressant, c'est qu'un nombre considérable de ces films préférés globalement dans cette communauté, que moi je n'ai pas encore vus, sont potentiellement intéressants à voir pour moi, selon toute probabilité en fonction de l'affinité, en tout cas beaucoup plus probablement qu'en considérant seulement la moyenne globale de toutes les opinions des internautes (car il existe des communautés entières diamétralement opposées à mes avis en général). En attendant l'émergence de ces communautés, qu'il reste à mettre en place, c'est ce dernier calcul qu'utilise pour le moment DVDClass, et qui produit déjà un résultat intéressant :

DVDClass permet d'évaluer la fiabilité des scores des films imdb, d'estimer la pertinence et l'adéquation des votes pour votre propre sens critique en comparant les scores moyens des internautes avec les vôtres afin de détecter si les scores imdb ne sont pas biaisés (par exemple en bénéficiant d'une campagne de propagande organisée visant à gonfler les scores de façon subjective, voire malhonnête : c'est cependant peu probable car imdb affirme surveiller ce genre de choses). Avec DVDClass, les votes ne sont pas dilués, on peut toujours savoir qui a voté quoi pour quel film. Il y a explication, conservation et reproductibilité des scores. Sur imdb, je me suis finalement aperçu que l'on pouvait obtenir le détail de chaque note par tranche d'age et par sexe, ce qui peut permettre d'affinité la pertinence des notes en fonction de sa catégorie. En théorie oui, mais en pratique il n'y a toujours pas de calcul d'affinité entre les votants. J'ai soumis la proposition à imdb, qui a été intéressé, mais la quantité de calcul nécessaire croit exponentiellement en fonction du nombre de votants, qui sont très nombreux sur imdb (mais le jeu en vaux sûrement la chandelle à mon avis). Amazon propose déjà des conseils personnalisés sur la base d'affinités de votes, mais le fonctionnement est opaque : c'est une boite noire dans laquelle on ne peut voir que les oeuvres en communs entre les votants, mais on ne peut jamais identifier un votant en question (pour se faire une idée sur lui en consultant l'ensemble de ses votes, comme cela est possible par exemple sur allociné), ce qui fait qu'en fin de compte, on ne peut jamais distinguer une opération commerciale d'une communauté d'opinion.

 

DVDClass, c'est quoi ?

Il s'agit d'un logiciel gratuit et libre pour PC sous Windows (toutes versions à partir de Windows 95). C'est une application de base de données de type MS-Access 2000 (voir Installation), dont le code source est disponible. Pour le moment, DVDClass n'a pas d'interface web car d'autres font ça mieux que moi : www.allocine.fr ou www.dvdtoile.com.

 

 

Comment ça marche ?

Il suffit d'établir un classement des films DVD que l'on a vu, d'abord dans chaque catégorie (0 à 5 étoiles), puis éventuellement au sein de chaque catégorie pour affiner les notes. Un système de proportionnalité fait ensuite correspondre approximativement ce classement de dvd avec les scores imdb, pour permettre une comparaison (dans une version future, le classement ordonné sera facultatif, mais le pour le moment, l'ordre est toujours pris en compte).

 

Exemples de classement

- Mon classement avec mes critiques : Html/ClassFilmDVDPatrice.html

Légende : ***** : chef-d'oeuvre, **** : excellent, *** : bien (mais dispensable), ** : moyen, * : mauvais (film raté de bonne foi), - : nul (escroquerie commerciale).

 

- Classement des votes des internautes sur imdb : Html/ClassFilmDVDIMDB.html

Dans ce cas, naturellement, les scores ne sont pas calculés par DVDClass mais recopiés à partir d'imdb (j'ai déjà saisi plus de 2500 titres disponibles en DVD ou VOD).

 

- Classement des différences des votes entre mon classement et celui résultant des votes imdb : Html/ClassFilmDVDPatriceDiffIMDB.html

Ce classement montre les films sous-notés sur imdb en début de liste ou sur-notés en fin de liste pour un votant particulier.

On obtient les résultats suivants qui sont présentés à la fin du document :

Moyenne des différences : 0.9 : elle correspond à la différence des notes aussi bien en positif qu'en négatif ;

Moyenne des différences algébriques : -0.1 : en utilisant une répartition des scores entre le score du premier DVD sur imdb (9.0 pour "Le Parrain") et le dernier DVD (1.6 pour "Da Hip Hop Witch"), on obtient un recentrage entre les deux classements, qui deviennent alors comparables.

Ecart type : 0.73 : en statistique, par définition, l'écart type concentre 2/3 de la distribution des différences de vote de part et d'autre du centre (maximum) d'une courbe gaussienne (courbe en cloche), qui modélise ce genre de distribution aléatoire. Cela permet de déduire que, par exemple, un film noté 5 sur imdb à 2 chances sur 3 de correspondre en fait à un score pour moi compris entre 4.4 et 5.8 (1 fois l'écart type + 0.1 de recentrage). Si on calcule alors la répartition statistique des différences de vote, on doit logiquement tendre vers cette courbe en cloche avec ces paramètres lorsque le nombre de films augmente. Le cumul en % de cette répartition (symétrique autour du centre, qui correspond à une note identique) indique la somme des occurrences (amplitude des écarts) qui donne ainsi la fourchette d'estimation finale de la note d'un film d'un votant par rapport à imdb (ou bien relativement par rapport à un autre votant).

 

- Classement des distances de score entre mon classement et celui résultant des votes des internautes sur imdb : Html/ClassFilmDVDPatriceIMDB.html

Ce classement montre les films mal-notés (notes dissemblables, divergentes) sur imdb en début de liste ou bien-notés (notes semblables, convergentes) en fin de liste pour un votant particulier.

Remarque : le calcul de la distance pour chaque film est la valeur absolue de la différence des votes multipliée par la moyenne des deux votes pour chaque film, de façon à renforcer l'importance des différences sur les meilleurs films :

abs(vote1 - vote2) * (vote1 + vote2)

 

Autres classements

- Classement des films par année : Html/ClassFilmDVDPatriceAn.html

 

Les classements suivants ne sont pas encore significatifs (votants fictifs, un seul autre vrai votant) :

 

- Classement des films sur l’ensemble des votants : Html/ClassFilmDVD.html

Pour chaque film, c'est une simple moyenne des votes disponibles ; bien sûr, plus le nombre de votants est important pour un film, plus la moyenne est significative. Pour la contribution du vote de chaque votant, le poids du vote est pondéré par le nombre total de films vus par le votant, de façon à tenir compte de la valeur de "l'expertise" des cinéphiles avertis par rapport aux cinéphiles plus occasionnels. Par la suite, toute une série de pondérations est envisageable (comptage du nombre de critiques rédigées, du nombre de votes détaillés, ... et aussi relativement par rapport à une communauté en particulier, par exemple Science-fiction).

 

- Classement des votes de chaque votant pour un film donné : Html/ClassFilmDVDVotes.html

 

- Classement des prestations d'un acteur (ou d'un réalisateur) par tous les votants, par exemple avec Steven Soderbergh : Html/ClassFilmDVDAuteur.html

ou bien pour un votant particulier : Html/ClassFilmDVDAuteurPatrice.html

 

Calcul d'affinités

- Il est possible de comparer deux classements entre deux personnes, il s'agit de la même fonctionnalité que la comparaison avec imdb : Html/ClassFilmDVDPatriceDiffLaurent.html

Cette comparaison des scores des films permet d'établir des affinités entre les votants et d'établir un classement de ces affinités entre un votant (en l'occurrence, c'est moi !) et les autres votants de DVDClass : Html/ClassFilmDVDAffinites.html

Le positionnement d'un votant dans le classement des affinités permet de savoir si deux cinéphiles sont plus proches l'un de l'autre que de la moyenne des internautes ou pas (ou bien relativement par rapport à la moyenne des votants de DVDClass).

 

Pronostic de l'intérêt d'un film

- Plus sophistiqué que la simple moyenne, le classement des films par affinités pour un votant tient compte des affinités avec les autres votants lors du calcul de la moyenne des votes pour un film : Html/ClassFilmDVDPatriceAffin.html

L'idée est d'estimer la probabilité qu'un film vous plaise à vous, ce qui n'est pas tout à fait la même chose que la valeur moyenne absolue d'un film, laquelle ne tient pas compte de votre sensibilité particulière !

On a vu que l'écart type caractérise en fait une courbe gaussienne dont la surface peut être interprétée comme une probabilité de score. La finalité de DVDClass est d'estimer la probabilité qu'un film vous plaise à partir des avis des critiques dont vous avez déjà pu estimer vos affinités avec eux.

 

- Classement des films restants à voir pour un votant (c'est encore moi !), à partir des affinités avec les autres votants : Html/ClassFilmDVDPatriceReste.html

Ce sont les films que vous n'avez pas encore classés (parce que vous ne les avez pas vus), mais qui ont déjà été notés par les autres votants (au moins un) avec lesquels vous avez peut-être des affinités.

 

Pourquoi seulement les films DVD ?

Il y a beaucoup moins de titres disponibles en DVD (quelques milliers) par rapport au nombre total de films de l'histoire du cinéma (plus de 300 000). Cependant, DVDClass permet de classer les films quel que soit le support (DVD, VOD, vidéo-club, film en salle, ...), et aussi de classer tout type d'oeuvre en général.

 

- Eventuellement, le support permet de définir une sélection, en l'occurrence voici la liste quasi complète des DVD disponibles en location (hormis quelques nouveautés et les films X) chez Canal 8 Vidéo Lyon Guillotière (32 quai Augagneur 69003, Tél.: 04 78 60 23 24) : Html/ClassFilmDVDC8IMDB.html, le classement par année permet de voir les nouveautés : Html/ClassFilmDVDC8IMDBAn.html

 

- Autre exemple de classement, voici mes morceaux préférés des Simple Minds : Html/ClassMusiqueChansonPatriceSimple_Minds.html

Et voici mes albums préférés des Depeche Mode : Html/ClassMusiqueAlbumPatriceDepeche_Mode.html

Et là un classement de mes 500 albums par ordre de préférence : Html/ClassMusiqueAlbumPatrice.html

 

- Je commence aussi un classement de ma bibliothèque SF, Fantastique, Heroic Fantasy (il manque bien sûr l'intégral de Frank Herbert, que je viens de relire pour la seconde fois, mais comme je n'avais pas commencer à noter mes livres, je vais attendre une prochaine relecture :-) : Html/ClassLivrePatrice.html

 

Quelques sites de notation

http://rateyourmusic.com correspond assez bien à ce que je veux obtenir, cependant ce site n'utilise pas www.cddb.com, la plus grosse base de données de CD audio du web (car elle est alimentée par les utilisateurs de logiciels de recherche des titres de CD inséré dans un ordinateur) ; il faut dire que le lien vers CDDB n'est pas très pratique : l'URL est longue (l'identifiant est calculé à partir de la table des matières du CD). www.epinions.com va plus loin en regroupant aussi les avis des grands sites de commerce en ligne de CD, ce qui est très certainement ce vers quoi il faut aboutir pour développer le rating (notation) des oeuvres musicales et autres. Cependant, le regroupement des critiques ne concerne pas les albums, mais les avis des utilisateurs de epinions sur ces magasins en ligne, dommage ! A la place de CDDB, on pourrait aussi se baser sur http://musicmoz.org (une déclinaison de http://dmoz.org, l'annuaire libre utilisé notamment par www.google.fr), mais cet annuaire est moins complet et les musiciens français sont peu représentés. Voir aussi www.rollingstone.com pour ses nombreuses critiques, et www.rateitall.com, qui permet de parcourir la liste des films notés par les votants, ce qui est pas mal ; mais les films sont classés par catégorie, et il n'y a pas de classement global ni de calcul d'affinités entre les votants, ce qui est dommage ; si seulement les concepteurs pouvaient imaginer la qualité et l'intérêt de l'information qu'ils pourraient exploiter au-delà des classements rudimentaires... voici une communauté qui prend en compte un classement ordonné de film et qui calcule ces fameuses affinités que j'évoque depuis le début : Ma liste top20 de film sur ymdb : dommage que l'on ne puisse construire ces communautés sur plus de 20 films. En faisant une compilation des sites imdb, ymdb, allociné et amazon, en prenant en compte les films, les albums musicaux et les livres (le tout géré avec un supercalculateur), on obtient sans doute l'avenir des communautés d'opinion.

 

Echange de notations entre votants

Un système d'archivage permet d'échanger des fichiers de classement entre les votants, de façon à constituer un réseau pair à pair de critiques de cinéma (ou autre). Pour les développeurs, il y a une démonstration complète du système d’archivage :

DVDClassBkUp.html : Attention, cette démo ne marche pas en ligne, elle ne fonctionne qu'en local, après que le contrôle DBToFile.ocx ait été enregistré dans la base de registre, par exemple lors du premier lancement du gestionnaire d'archivage.

Voir aussi la page principale de DBToFile, si vous voulez intégrer le système d’archivage à une autre base Access de votre choix : http://patrice.dargenton.free.fr/dbtofile/index.html

Voir aussi : Echange de notations via DVDClass.xml

 

Mode d'emploi

Voter avec DVDClass

- 1 : Créez un Votant : c'est vous !

- 2 : Classez les films que vous avez vus dans chaque catégorie : de 5 étoiles à 0 étoile ;

- 3 : Si vous voulez affiner les notes, classez ensuite les films au sein de chaque catégorie et pour chaque catégorie (on ne peut pas encore ignorer l'ordre ce classement et éviter ainsi son influence sur les notes, mais c'est envisageable dans une version future) ;

- 4 : Utilisez l'assistant pour calculer les scores équivalents imdb (c'est une simple règle de 3 pour chaque catégorie). Vous pouvez modifier les scores minimum et maximum pour ajuster l'amplitude des scores finaux. Cependant, 3 et 9 permet une assez bonne comparaison avec les moyennes que l'on trouve sur imdb.

 

Comme c'est un peu long à faire, vous pouvez commencer par classer une dizaine de films puis tester les différentes requêtes disponibles.

 

 

Installation

- Si vous n'avez pas Access, pour pouvoir utiliser une application Access telle que DVDClass, il vous faut la version RunTime d'Access 2000, l'équivalent pour Access de la visionneuse PowerPoint ou Word (logiciels gratuits), mais avec la possibilité de modifier des données. La version RunTime d'Access 2000 pour Windows (toutes versions à partir de Windows 95) est disponible ici (24/04/2000, 32 Mo, il est précisé qu'il faut une licence Developer d'Office pour avoir le droit de le télécharger pour l'inclure dans un package de distribution destiné aux utilisateurs finaux, mais si ceux-ci téléchargent eux-mêmes le runtime, c'est quand même plus simple, et Microsoft m'avait répondu à l'époque que c'était légal que je mette ce runtime sur mon site, alors autant mettre directement ce lien, et d'ailleurs pourquoi faire simple quand on peut faire compliqué, en terme de licence ? : on n'a pas le droit mais c'est autorisé, et il faut une licence, mais c'est gratuit, et on peut la télécharger, mais seulement si on a le droit, mais tout le monde peut le faire si ce n'est pas interdit, et j'ai le droit de le redistribuer à tous, enfin si j'ai bien compris...).

 

- Si donc vous avez Access (version >= 2000) ou sa version RunTime, vous pouvez télécharger ce package (3.5 Mo) : http://patrice.dargenton.free.fr/dvdclass/dvdclass.zip

 

- Avec la version RunTime d'Access, parfois, par exemple au premier lancement, l'application n'effectue aucune action demandée ! (les événements VBA ne sont pas activés) il faut alors quitter l'application puis réessayer ! (c'est un bug de la version RunTime d'Access).

 

Système d'archivage avec DBToFile

- Si vous voulez utiliser le système d'archivage et d'échange de fichier de donnée, le contrôle d'archivage DBToFile requiert le RunTime de Visual Basic 6 (présent en standard dans Windows XP.

 

- Si on teste avec un Windows XP tout neuf avec la version RunTime d'Access, l'utilisation du formulaire d'archivage fait planter Access. Dans ce cas, l'installation de DBToFile avec son package complet résout le problème, il est disponible ici (ce package comprend notamment le RunTime VB6) :

http://patrice.dargenton.free.fr/dbtofile/DBToFile2Inst.zip (4 Mo, dernière m.a.j.: le 26/02/2006, version 2.0.0.14 du 30/10/2005)

 

- En cas de mise à jour du logiciel DVDClass, sauvegardez avant vos données dans un fichier externe en utilisant le formulaire Archivage (archivez "Le votant" : vous), effectuez la mise à jour, puis rechargez votre fichier.

 

 

Désinstallation

Le cas échéant (si DBToFile a été inscrit), utilisez le bouton "Enlever l'inscription du contrôle DBToFile de la base de registre" dans l'onglet Filtres du formulaire DVDClass, puis supprimez simplement les fichiers du répertoire de DVDClass.

 

 

Prochainement

Des requêtes supplémentaires vont être ajoutées :

- Cote des acteurs, réalisateurs, scénaristes, ... basée sur la moyenne des votants ;

- Tracé de la courbe de progression des films d'un réalisateur (ou albums musicaux d'un groupe) dans le temps, ou bien classement des films préférés par réalisateur pour un votant donné, ou une communauté, avec une pondération liée au carré de la note (ensuite classement des réalisateurs en fonction des points ainsi obtenus) ;

- Gestion d'une discographie notée, telle que celle-ci ;

- Exportation des requêtes en XML au lieu d'HTML : l'idée, c'est de n'exporter que les données, en laissant la présentation des données libre et modifiable par l'utilisateur grâce à une feuille de style ;

- ...

 

 

Remarques diverses

Touches de raccourci pour entrer les données au clavier (facultatif)

Vous pouvez utiliser les touches de raccourci communes à toutes les applications Access. Vous pouvez utiliser ces touches en mode Formulaire ainsi que dans les feuilles de données pour accélérer la saisie de données :

 

Appuyez sur

Pour

CTRL + ; (point-virgule)

Insérer la date en cours.

CTRL + : (deux points)

Insérer l'heure en cours.

CTRL + ' (apostrophe) ou

CTRL + " (guillemets)

Insérer la valeur du même champ de l'enregistrement précédent.

CTRL + ENTREE

Insérer une nouvelle ligne dans un champ, une étiquette ou la boîte de dialogue Zoom.

CTRL + + (signe plus)

Ajouter un nouvel enregistrement.

CTRL + - (signe moins)

Supprimer l'enregistrement en cours.

MAJ + ENTREE

Enregistrer les modifications apportées à l'enregistrement en cours.

ESPACE

Faire basculer la valeur dans la case à cocher ou le bouton d'option.

ECHAP (ESCAPE)

Annuler l'opération en cours

 

Pour ajouter un nouvel enregistrement, vous pouvez aussi atteindre la fin de la liste des enregistrements, qui est une place spécialement réservée par Microsoft Access pour l'ajout, ou bien cliquer sur le bouton '+' lorsqu'il est présent en mode formulaire. Sinon, utilisez le menu contextuel "Créer" à partir du bouton droit de la souris.

 

La présence de l'icône représentant un crayon dans la zone de sélection de l'enregistrement signifie que cet enregistrement est en cours de modification.

 

Champs à saisir

- Faut-il renseigner le champ Auteur systématiquement ?

Non, pas forcément. Le champ Auteur autorise plusieurs auteurs par oeuvre suivant la profession, tandis que le champ Oeuvre Parent est unique. Facultatif aussi, ce dernier permet par exemple de saisir l'album musical dont sont issus les titres (singles). Il est rempli automatiquement lors de l'ajout si le filtre correspondant est activé.

 

- Quels champs sont nécessaires au minimum pour les films ?

Le titre en français et le lien imdb (qui est utile pour la recherche de doublon dans les films, et pour récupérer les infos sur le film : année, note, nombre de votes).

 

- Comment sélectionner les colonnes à imprimer ?

Il faut retailler les colonnes (sans nécessairement sauver la mise en forme de la requête).

 

- Certains champs ne sont pas remplis pour le moment, par exemple la disponibilité des DVD en zone 1 ou 2. Grâce au système d'archivage, toute saisie peut être répercutée (répliquée) sur toutes les bases de DVDClass disséminées dans la nature, simplement en échangeant ses fichiers de sauvegarde.

 

Problème des doublons dans les titres des oeuvres

En mode mono-utilisateur, lors de l'ajout d'un film, une double vérification des doublons a lieu : d'une part, le titre doit être unique au niveau de la base de données (Access alertera donc l'utilisateur le cas échéant par un message d'erreur de doublon), et ce pour un type d'oeuvre donné. Si le type est différent, on peut alors heureusement avoir le même titre sans risque de mélange, par exemple le film tiré du livre de même titre ; ensuite, une autre recherche des doublons est effectuée, cette fois basée sur le code imdb (URL web), après la saisie et validation de ce champ, pour alerter l'utilisateur, le cas échéant, qu'il s'agit d'un autre titre pour un film déjà saisi (il devra donc supprimer le dernier ajout doublonnant).

Cependant, avec plusieurs utilisateurs, lors de l'échange de fichiers de sauvegarde de DVDClass, ces deux cas de figure peuvent se produire à nouveau : on lance donc automatiquement la procédure de détection des doublons (sur les films et les livres) après chaque chargement, ce qui alerte sur le second cas, mais pour le premier cas, le problème inverse peut également se produire : c'est la confusion des votes de deux oeuvres distinctes portant malencontreusement le même titre principal. Dans ce cas, si l'on s'aperçoit de l'erreur après le chargement du fichier, il faut effacer un des votes et revoter sur une autre oeuvre avec un titre différent, en ajoutant par exemple le nom du réalisateur ou l'année à la fin du titre de l'oeuvre, mais un des deux liens imdb sera perdu et il faudra le retrouver. Le problème, c'est qu'un utilisateur de DVDClass peut difficilement deviner qu'un autre votant pensait à un autre film avec un titre identique, à moins de vérifier les codes imdb lors du chargement de son fichier de sauvegarde, mais cela n'est pas possible pour le moment dans le système d'archivage DBToFile (en théorie on pourrait cependant analyser le fichier avant de l'importer : il suffirait simplement d'alerter que deux URL distinctes correspondent à un titre unique, ce qui est une erreur certaine si les URL sont toutes les deux basées sur le code IMDB ; mais une fois le fichier chargé, l'erreur n'est détectable que par l'un des votants, et encore, seulement d'une manière fortuite). En attendant, il faut donc centraliser l'ajout des oeuvres par une seule personne, ou bien utiliser une règle unique de nommage, par exemple le titre figurant sur le site imdb (mais attention car les doublons sont autorisés sur imdb pour le titre de l'oeuvre, ce n'est pas si simple).

Pour résoudre ces problèmes de doublons, le plus simple serait de fixer l'unicité sur le champ Web au lieu du champ Oeuvre (+ type de l'oeuvre), mais cela obligerait à le renseigner systématiquement. Or, je n'ai pas encore trouvé de lien pratique que l'on pourrait utiliser pour les CD audio et les livres, comme c'est le cas pour les films avec imdb. C'est pour cela qu'en pratique, à grande échelle, ce genre de logiciel ne fonctionne qu'en ligne ! Cependant, le principe du mode déconnecté revient en force avec la multiplication des appareils mobiles, et le principe de l'identifiant unique va dans ce sens, voir par exemple l'ISAN pour l'audiovisuel, mais les CD et les livres ne sont pas pris en compte. Pour la musique, on va déjà vers une standardisation des méta-données de la musique en ligne.

 

Echange de notations via DVDClass.xml

Ultérieurement, DVDClass sera associé à un site web (base de données en ligne) tout en conservant l'aspect pratique d'une base de donnée hors ligne (saisie et consultation rapide des données sans être connecté) grâce à une synchronisation XML des données. Pour cela, il faudra créer un standard XML pour les échanges de critiques sur le web, tel que celui-ci : CritiXML : la grammaire XML au format DTD pour le partage de critiques DVD (test de validité selon la DTD).

 

Divers

- Utilité des zones Score min. et max.: elles servent à faire correspondre les scores de DVDClass avec ceux de imdb. Il faut éviter de mettre 0 et 10, car comme les scores d'imdb sont déjà des moyennes, ces scores ne sont jamais atteints en pratique. Vous pouvez cependant ajuster ces valeurs comme vous voulez.

 

- Correction automatique des classements : si vous changez la catégorie d'une oeuvre, cela crée un "trou" dans le classement. Cependant, lors de l'étape du calcul automatique des scores, une correction de ce classement est effectuée, sans tenir compte des filtres appliqués, hormis le type d'oeuvre.

 

- Navigation à partir des requêtes : avec la version RunTime d'Access, le menu contextuel n'apparaît pas ; cependant vous pouvez accéder aux mêmes commandes en utilisant la barre de menu.

 

- Menu contextuel "Requête" : à partir de certain champ d'une requête, il est possible de lancer une autre requête, à savoir la requête principale associée au champ. Par exemple le champ Oeuvre permet d'accéder à l'ensemble des votes pour cette oeuvre, le champ Votant rappèle le classement des oeuvres du votant, et le champ Auteur rappèle l'ensemble des prestations de l'Auteur (ou Acteur).

 

- Filtrage des requêtes à partir du type d'oeuvre ou bien du type de support : il n'est pas disponible pour toutes les requêtes (ni pour tous les types de filtrage).

 

 

Information

Pour information, voici le plan de la base de données et sa structure :

Plan de la base de données DVDClass

 

 

Structure de la base de données DVDClass

Le rapport est généré automatiquement par l'utilitaire DBComp :

Rapport de base de données DBComp : www.vbfrance.com/code.aspx?ID=17847

Par Patrice Dargenton : http://patrice.dargenton.free.fr/index.html

 

Auteur : Table des auteurs, réalisateurs, producteurs, éditeurs, distributeurs, scénaristes, acteurs, compositeurs, musiciens, interprètes...

  IdAuteur (Long) : Identifiant de l'auteur

  Auteur (Text50) : Nom et prénom de l'auteur (Null interdit)

  MnPays (Text2) : Code mnémonique du pays de l'auteur

  MnProfession (Text4) : Code mnémonique de la profession principale : auteur, réalisateur, producteur, éditeur, distributeur, scénariste, acteur, compositeur, musicien, interprète... (Null interdit)

  Femme (Boolean) : Booléen pour indiquer si l'auteur est une femme

  Web (Memo) : Site web de l'auteur (pour les films : requête imdb permettant de retrouver l'auteur)

    Index   : Auteur, Unique

 

AuteurOeuvre : Table des auteurs/acteurs... participant à une oeuvre

  IdAuteur (Long) : Identifiant de l'auteur (Null interdit)

  IdOeuvre (Long) : Identifiant de l'oeuvre (Null interdit)

  MnProfession (Text4) : Code mnémonique de la profession de l'auteur pour cette oeuvre (Null interdit)

    Index   : IdxUniciteAuteurOeuvreProfession, 3 champs, Unique, Primary

      champ : IdAuteur

      champ : IdOeuvre

      champ : MnProfession

 

ClassDistVotant : Table temporaire pour le calcul des distances ou différences de vote entre deux votants ; Attention : cette table doit pouvoir contenir tel quel le contenu de la requête RqClassDistVotant

  Dist (Single) : Distance ou différence de vote entre les deux votants

  Vote 1 (Single) : Valeur du vote du premier votant

  Vote 2 (Single) : Valeur du vote du second votant

  Oeuvre (Text255) : Oeuvre vue par les deux votants

  Votant 1 (Text50) : Nom du premier votant

  Votant 2 (Text50) : Nom du second votant

  IdVote1 (Long) : Identifiant du vote du premier votant

  IdVote2 (Long) : Identifiant du vote du second votant

  Categorie1 (Text50) : (null)

  Categorie2 (Text50) : (null)

  TitreUSA (Text50) : Titre de la version aux USA du film

  Annee (Text50) : Année de sortie de l'oeuvre (sortie en salle pour les DVD)

  MnTypeOeuvre (Text20) : Code mnémonique du type de l'oeuvre : FILM, MUSIQ, LIVRE, ...

  Oeuvre1 (Text255) : Oeuvre parent le cas échéant (oeuvre dont fait partie celle-ci)

  Oeuvre2 (Text255) : Oeuvre grand-parent le cas échéant (oeuvre dont l'oeuvre parent fait partie)

  IdOeuvre (Long) : Identifiant de l'oeuvre

  N° (Long) : Numéro automatique

 

ClassOeuvres : Table temporaire pour le calcul des scores des oeuvres à partir des affinités entre votants

  Score (Single) : Score final en fonction de la requête

  Oeuvre (Text255) : Titre de l'oeuvre dans la version française

  Annee (Text50) : Année de sortie de l'oeuvre (sortie en salle pour les DVD)

  NbVotes (Long) : Nombre de votants ayant vu l'oeuvre

  Affinite (Single) : Classement des oeuvres par affinité avec le votant

  Controverse (Single) : Indice de controverse de l'oeuvre

  MoySimple (Single) : Simple moyenne des votes

  MoySeuil (Single) : Classement des oeuvres par seuil > 5 ou < 5

  MoySeuilSup (Single) : Moyenne des votes > 5

  MoySeuilInf (Single) : Moyenne des votes < 5

  IdOeuvre (Long) : Identifiant de l'oeuvre

  TitreUSA (Text50) : Titre de la version aux USA du film

  N° (Long) : Numéro automatique

 

ClassVotants : Table temporaire pour le calcul des affinités entre votants

  Distance (Single) : Affinité, originalité ou jugeote selon la requête

  Votant (Text50) : Votant avec lequel est comparé le votant principal

  NbOeuvres (Long) : Nombre d'oeuvres évaluées par chacun des deux votants

  IdVotant (Long) : Identifiant du votant

  EcartType (Single) : Ecart type des différences de vote entre les deux votants

  MoyAlgeb (Single) : Moyenne algébrique des différences de vote entre les deux votants

  N° (Long) : Numéro automatique

 

Genre : Table des genres cinématographiques (drame, comédie, ...) ou autres genres : musicaux, littéraires, ...

  MnGenre (Text20) : Code mnémonique du genre (Null interdit)

  Genre (Text50) : Intitulé du genre cinématographique (drame, comédie, ...) ou autre genre : musical (ex.: pop), littéraire (ex.: SF), ... (Null interdit)

  MnTypeOeuvre (Text20) : Code mnémonique du type d'oeuvre concerné : FILM, MUSIQ, LIVRE, ...

    Index   : PrimaryKey, Unique, Primary

      champ : MnGenre

 

Oeuvre : Table des oeuvres cinématographiques (film) ou autres : musicales (cd audio), littéraires, ...

  IdOeuvre (Long) : Identifiant de l'oeuvre

  Oeuvre (Text255) : Titre de l'oeuvre dans la version française (Null interdit)

  IdOeuvreParent (Long) : Identifiant de l'oeuvre dans laquelle celle-ci est comprise

  IdSequelle (Long) : Identifiant de la suite de l'oeuvre, le cas échéant

  MnTypeOeuvre (Text20) : Code mnémonique du type de l'oeuvre : FILM, MUSIQ, LIVRE, ... (Null interdit)

  MnGenre (Text20) : Code mnémonique du genre cinématographique ou autre

  MnPays (Text2) : Code mnémonique du pays d'origine de l'oeuvre

  TitreUSA (Text50) : Titre de l'oeuvre aux USA, s'il est différent du titre français

  TitreOriginal (Text50) : Titre de la version originale du film, s'il est différent des titres français et USA

  Annee (Text50) : Année de sortie de l'oeuvre (sortie en salle pour les DVD)

  Web (Memo) : Lien web (lien IMDB du film ou lien CDDB du CD)

  Sujet (Text255) : Sujet de l'oeuvre

  Synopsis (Memo) : Synopsis de l'oeuvre

  ScoreIMDB (Single) : Score issu des votes des internautes sur www.imdb.com (champ pas encore utilisé)

  ScoreDVDClass (Single) : Score calculé par DVDClass à partir des avis des votants (champ pas encore utilisé)

  DVDZone1 (Boolean) : Booléen pour indiquer si le DVD existe en zone 1

  DVDZone2 (Boolean) : Booléen pour indiquer si le DVD existe en zone 2

  DVDSousTitresFr (Boolean) : Booléen pour indiquer si le DVD existe en sous-titré en français

  DVDAudioFr (Boolean) : Booléen pour indiquer si le DVD existe avec une piste audio en français

  DVDAudioFrStereo (Boolean) : Booléen pour indiquer si le DVD existe avec une piste audio stéréo en français

  DVDAudioFr51 (Boolean) : Booléen pour indiquer si le DVD existe avec une piste audio 5.1 en français

  DVDFormat (Text255) : Complément sur les formats disponibles en DVD

  CDNumPiste (Byte) : Numéro de piste pour les CD audio

    Index   : IdxUniciteOeuvre, 2 champs, Unique

      champ : Oeuvre

      champ : MnTypeOeuvre

 

OeuvreSupport : Table des supports de diffusion des oeuvres

  IdOeuvre (Long) : Identifiant de l'oeuvre

  MnSupport (Text20) : Code mnémonique du support : FDVD, MCD, ... (Null interdit)

    Index   : IdxUniciteOeuvreSupport, 2 champs, Unique, Primary

      champ : IdOeuvre

      champ : MnSupport

 

Pays : Table des pays d'origine où sont produits les oeuvres

  MnPays (Text2) : Code mnémonique du pays (nomenclature web à 2 lettres) (Null interdit)

  Pays (Text50) : Nom du pays (Null interdit)

    Index   : PrimaryKey, Unique, Primary

      champ : MnPays

 

Profession : Table des professions des auteurs

  MnProfession (Text4) : Code mnémonique de la profession (Null interdit)

  Profession (Text50) : Profession (Null interdit)

    Index   : PrimaryKey, Unique, Primary

      champ : MnProfession

 

Support : Table des types de support de diffusion des oeuvres : FDVD, MCD, ...

  MnSupport (Text20) : Code mnémonique du support : FDVD, MCD, ... (Null interdit)

  Support (Text50) : Descriptif du support (Null interdit)

  MnTypeOeuvre (Text20) : Code mnémonique du type d'oeuvre concerné : FILM, MUSIQ, LIVRE, ...

  Contenu (Text255) : Contenu détaillé du support

  Prefixe (Text50) : Préfixe pour le nom du fichier à produire

    Index   : PrimaryKey, Unique, Primary

      champ : MnSupport

 

TypeOeuvre : Table des types d'oeuvres : Film, Musique, Livre...

  MnTypeOeuvre (Text20) : Code mnémonique du type d'oeuvre : FILM, MUSIQ, LIVRE, ... (Null interdit)

  TypeOeuvre (Text50) : Descriptif du type d'oeuvre (Null interdit)

  Contenu (Text255) : Contenu détaillé du type d'oeuvre

  MnSupportDef (Text20) : Code mnémonique du support par défaut du type d'oeuvre : FDVD pour Film, ...

    Index   : PrimaryKey, Unique, Primary

      champ : MnTypeOeuvre

 

Votant : Table des votants participant aux critiques des oeuvres notées dans DVDClass

  IdVotant (Long) : Identifiant du votant

  Votant (Text50) : Nom et prénom du votant (Null interdit)

  MnPays (Text2) : Code mnémonique du pays du votant

  Surnom (Text50) : Surnom du votant

  AnneeNaissance (Text50) : Année de naissance du votant

  EMail (Memo) : EMail du votant

  Web (Memo) : Site web du votant

  Femme (Boolean) : Booléen pour indiquer si le votant est une femme

  Publique (Boolean) : Booléen pour indiquer si le votant accepte que ses votes soient publiés sur le site de DVDClass (en cas d'échange de fichier de sauvegarde)

  DateMaj (Date) : Date de la dernière mise à jour des votes

  DatePubWeb (Date) : Date de la dernière publication sur le web pour gérer une liste de nouveautés

  IndiceCourant (Long : 0) : Compteur interne à DVDClass

    Index   : Votant, Unique

 

Vote : Table des votes de chaque votant pour les oeuvres

  IdVote (Long) : Identifiant du vote

  Vote (Single) : Note globale de l'oeuvre entre 0 et 10

  IdVotant (Long) : Identifiant du votant (Null interdit)

  IdOeuvre (Long) : Identifiant de l'oeuvre (Null interdit)

  Categorie (Byte) : Catégorie de l'oeuvre de 0 à 5 étoiles

  Classement (Long) : Classement dans la catégorie choisie

  Sujet (Text255) : Sujet de l'oeuvre en une phrase

  Critique (Memo) : Critique rédigée de l'oeuvre (en texte brut ou bien hypertexte : HTML ou XML)

  AgePublicMin (Integer) : Age minimum conseillé pour découvrir cette oeuvre

  AgePublic (Integer) : Public concerné par l'oeuvre

  DoseNotoriete (Single) : Intensité de la campagne promotionnelle et du battage médiatique autour de l'oeuvre

  DoseSexe (Single) : Dose de sexe

  DoseViolence (Single) : Dose de violence

  DoseFantastique (Single) : Dose de fantastique

  DoseSubtilite (Single) : Dose de subtilité de l'oeuvre déterminant son accessibilité

  Scenario (Single) : Qualité du scénario : intrigue, suspens, enchaînement, dénouement, rebondissement, vraisemblance, propos, cohérence

  Technique (Single) : Qualité technique de l'oeuvre et de son support : effets spéciaux, bande son, doublage, traduction

  Acteurs (Single) : Qualité de la prestation des acteurs

  Realisation (Single) : Qualité de la réalisation et de la mise en scène : esthétique, poésie, rythme

  Clarte (Single) : Clarté du propos pour la compréhension de l'oeuvre

  Originalite (Single) : Originalité de l'oeuvre

  Ambition (Single) : Ambition de l'oeuvre

  Homogeneite (Single) : Régularité de l'ensemble des qualités de l'oeuvre

  Bonus (Single) : Qualité et quantité des bonus : making of (tournage), interview, filmographie, bande annonce

  NbVotes (Long) : Nombre de votes pour les votes composés (imdb, DVDClass, ...)

  Date (Date) : Date du vote pour sélectionner les nouveautés

  DateMaj (Date) : Date de mise à jour du vote pour simplifier la synchronisation des notes imdb

    Index   : IdxUniciteVotantOeuvre, 2 champs, Unique

      champ : IdVotant

      champ : IdOeuvre

 

 

Historique des versions

- 07/01/2007 (version 1.10) : Correction du bug lors de l'affichage des oeuvres restantes par affinités ;

- 09/09/2006 (version 1.09) : Correction du bug de changement de classement via l'un des 3 boutons : Plus, Moins ou Permutation : cela ne peut marcher qu'avec le support général contenant toutes les oeuvres, et il faut en outre qu'il n'y ait aucun filtre appliqué, sinon le classement est erroné ; Re-calcul des scores à partir du classement : utilisation d'un champ temporaire Vote.ClassementTmp (pas prudent de modifier un champ sur lequel la requête a un tri) ; Case à cocher Liens (vers les sites de cinéma : Glowria.fr ajouté) à la place du Lien vers un comparateur de prix de DVD ; Suppressions en cascade : on peut maintenant supprimer facilement une oeuvre ou un votant, même s'il y a des votes (faire attention à la suppression !) ; Calcul d'affinité : il ne fonctionne pas pour le moment : impossible d'obtenir une prédiction par affinité qui soit supérieure à celle fournie par exemple par IMDB : en pratique, l'écart type du votant par affinité n'est pas inférieure à celui avec IMDB (soit 0.72). Cependant, je prépare un module en DotNet2 dont l'objectif est de créer un votant moyen par affinité avec un écart type sensiblement inférieur à 0.72 (sinon DVDClass ne sert à rien du tout, hormis vérifier la pertinence d'IMDB) ; Note : maintenant, le votant par affinité n'inclut plus les votes du votant (ce qui a permis de détecter le problème précédent) ;

- Version 1.08 : non publiée (bug classement toujours pas corrigé) ;

- 28/05/2006 (version 1.07) : Re-calcul des scores à partir du classement : accomplir d'abord la requête asynchrone (Rq.MoveLast). Ajout d'index sur la table Vote, sur les champs Vote, Categorie et Classement ; Calcul d'affinités entre les votants : le recentrage ne fonctionnait qu'avec le point comme séparateur décimal dans les paramètres régionaux de Windows ; Ignorer les notes négatives (notes imdb non trouvées) dans certains classements ; DBToFile en liaison tardive (et en version 2) : il n'est plus nécessaire pour compiler le code source, du coup il n'y a plus de package d'installation pour DVDClass (mais consultez cependant la rubrique Installation) ; Amélioration de l'export HTML ; Amélioration du WebScraper ; rConvStrEnReel : gestion du séparateur décimal, il restait des cas à traiter ; DTD : animateur ajouté ; Ajout de film : recherche automatique de doublon ;

- 10/04/2002 : Amélioration de l'export HTML, WebScraper pour la mise à jour des notes imdb : Attention : après vérification, il s'avère qu'IMDB n'accepte pas les robots sur son site, c'est proscrit dans sa charte d'utilisation. Et c'est normal, car si tout le monde faisait la même chose, les performances du site pourraient en pâtir. A l'avenir, je pense n'utiliser le WebScraper que lors de l'ajout de nouveaux films (et non plus pour la mise à jour des notes des films), en attendant une autre technique légale cette fois ;

- 20/10/2001 : Amélioration de l'export HTML ;

- 29/09/2001 : Première version complète (export HTML), sources disponibles, correction automatique des catégories pour les notes imdb des films, recherche de doublons ;

- 31/07/2001 : Quatrième version Bêta (correction bug catégorie 0, bug installation VBRT, scores recadrés entre 8.8 et 3.1) ;

- 28/06/2001 : Troisième version Bêta (calcul du box-office, de l'indice passion, moyenne des votants, recadrage des votes avec le biais moyen avec imdb, calcul des oeuvres controversées ou consensuels, calcul des votants originaux ou "conservateurs", classement des oeuvres par moyenne de seuil, interface simplifiée, requêtes en cascade, comparateur de prix pour les DVD) ;

- 19/05/2001 : Seconde version Bêta (calcul de l'écart type, compatibilité Windows XP et Office XP) ;

- 07/04/2001 : Première version Bêta.

 

 

Liens Web

Html/ClassFilmDVDC8IMDB.html, Html/ClassFilmDVDC8IMDBAn.html : Canal 8 Vidéo Lyon Guillotière

Html/ClassFilmVODCPIMDB.html : VOD (vidéo à la demande) sur CanalPlay.fr

Html/ClassFilmVODArtIMDB.html : VOD sur ArteVOD.com

 

- Mes critiques sur ciao : www.ciao.fr/membres/229348.html

- Ma liste top20 sur ymdb : www.ymdb.com/patrice99/l1021_frfr.html

french.imdb.com : Pour ceux qui se sentent concernés par le contrôle parental, voici les significations des classements d'accessibilité au public qui sont recommandés aux USA et présentés sur imdb : www.mpaa.org/movieratings/index.htm

- Site de critiques : www.dvdtoile.com, www.commeaucinema.com, www.dvdtest.com, www.allocine.fr (pour ces 2 derniers : regroupement des critiques en provenance des principaux sites de critiques professionnels).

Rating en anglais : www.epinions.com, www.rateitall.com

- Généralisation de la compilation de votes : Les réseaux d'expert

 

Les critiques de cinéma en français sur le web à partir des annuaires généralistes :

http://dmoz.org/World/Français, l'annuaire libre utilisé notamment par www.google.fr

Altavista.fr

Yahoo.fr

Wanadoo.fr

Voila.fr

Lycos.fr

Nomade.fr

Msn.fr

 

 

ou bien à partir des cercles communautaires (webrings) :

Le webring francophone des critiques de films

 

DVDClass Webring : Le cercle des critiques de films notés ou classés

 

Ma liste de liens pour les DVD :

Cinéma & DVD

french.imdb.com  www.imdb.com

www.amazon.fr

www.az-dvds.com

www.dvdfly.com

www.ymdb.com/topmovies

www.ciao.fr

www.dvdtoile.com

www.cinedvd.net

www.commeaucinema.com

www.allocine.fr

www.lesvideoclubs.com/video

InterDVD

Bravonestor.com Prix DVD

www.dvdtest.com

www.dvd-fr.com

www.cdiscount.com

www.dvdzone2.com

www.homecinedvd.com

http://faq.inmatrix.com/

www.cyberdvdfilm.com

Jaquettes DVD : www.moviecovers.com

dvdutils.com : www.7emezone.com

www.bestdvd.com

www.tf1video.fr

 

Et les sites musicaux :

http://rateyourmusic.com

www.rollingstone.com

www.cddb.com

http://musicmoz.org (une déclinaison de http://dmoz.org)

 

 

http://patrice.dargenton.free.fr/dvdclass/index.html

http://patrice.dargenton.free.fr/index.html

patrice.dargenton@free.fr