<?xml version="1.0" encoding="UTF-8"?>
<document>
   <header>
      <authors>
         <author>
            <name>Raphaël Semeteys</name>
            <email>raphael.semeteys@atossorigin.com</email>
         </author>
      </authors>
      <dates>
         <creation></creation>
         <validation></validation>
      </dates>
      <language>en</language>
      <appname>jQuery (UI)</appname>
      <release>1.3.2</release>
      <licenseid>31</licenseid>
      <licensedesc>GNU GPL</licensedesc>
      <url>http://jquery.com</url>
      <desc>jQuery est un moteur AJAX, jQuery UI regroupe les composants graphiques</desc>
      <demourl>http://jqueryui.com/demos/</demourl>
      <qsosformat>1.6</qsosformat>
      <qsosappfamily>Moteur AJAX</qsosappfamily>
      <qsosspecificformat>1.0</qsosspecificformat>
      <qsosappname></qsosappname>
   </header>
   <section name="generic" title="Section générique">
      <desc>Les critères génériques de l'évaluation Presto de QSOS</desc>
      <element name="intrinsicdurability" title="Pérennité">
         <desc>Pérennité</desc>
         <element name="maturite" title="Maturité">
            <desc></desc>
            <desc0>Logiciel provenant d'un fork ou avec une forte probabilité de fork dans un futur proche.</desc0>
            <desc1>Projet jeune (moins de 3 ans) ou connaissant des difficultés à stabiliser les versions de développement.</desc1>
            <desc2>Projet stable ou ayant un bon historique de gestion de crise. Les nouvelles versions apportent de façon prépondérante de nouvelles fonctionnalités.</desc2>
            <score>2</score>
            <comment>2006 création du projet jQuery, version 1.3.2 en février 2009. Nouvelles versions frequentes.
         </comment>
         </element>
         <element name="adoption1" title="Adoption">
            <desc></desc>
            <desc0>Usage détectable sur Internet sans véritable activité communautaire</desc0>
            <desc1>Utilisation communautaire prépondérante</desc1>
            <desc2>Nombreuse références industrielles</desc2>
            <score>2</score>
            <comment>Utilisé par Digg, BBC, Major League Baseball, Dell, IBM, ...</comment>
         </element>
         <element name="developpement" title="Développement">
            <desc></desc>
            <desc0>Deux ou moins de deux développeurs clairement identifiés.</desc0>
            <desc1>Équipe de développement réduite avec un turn-over important ou sans équipe de direction identifiée.</desc1>
            <desc2>Équipe de développement structurée comportant plus de 5 développeurs actifs.</desc2>
            <score>2</score>
            <comment>http://docs.jquery.com/Contributors</comment>
         </element>
         <element name="activite" title="Activité">
            <desc></desc>
            <desc0>Très faible activité, que ce soit sur les résolutions de bugs, les releases, l'ajout de nouvelles fonctions ou sur les espaces communautaires (wiki, forum, mailing list...)</desc0>
            <desc1>Activité détectable mais anarchique (pas feuille de route accessible facilement, pas de prévisions de nouvelles fonctionnalités ou de prévisions de nouvelles versions visible)</desc1>
            <desc2>Activité importante et visible via la mise en place de feuilles de routes traçant les requêtes de nouvelles fonctionnalités et/ou les prévisions de sortie des nouvelles version</desc2>
            <score>2</score>
            <comment>Utilisation d'un  Bug Tracker (http://dev.jquery.com)</comment>
         </element>
         <element name="strategicalindependence" title="Indépendance stratégique">
            <desc0>Pas de stratégie détectable ou stratégie dictée par une société commerciale, un sponsor ou un individu unique.</desc0>
            <desc1>Stratégie décidée par l'équipe de developpement.</desc1>
            <desc2>Indépendance forte de l'équipe de développement, fort engagement du projet dans un processus de standardisation.</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="copyrightowners" title="Détenteur des droits">
            <desc0>Les droits sont détenus par quelques individus ou entités commerciales, facilitant le changement de licence</desc0>
            <desc1>Les droits sont détenus par de nombreux individus de façon homogène, rendant le changement de licence très difficile</desc1>
            <desc2>Les droits sont détenus par une entité légale, une fondation dans laquelle la communauté a confiance (ex: FSF, Apache, ObjectWeb)</desc2>
            <score>0</score>
            <comment>John Resig, le créateur initial de jQuery détient les droit sur le moteur de base. En revanche sur jQuery UI les droits sont détenus par les différents contributeurs (http://jqueryui.com/about).</comment>
         </element>
         <element name="license" title="Licence">
            <desc>Licence, à pondérer uniquement si le client désire un jour devenir propriétaire du code</desc>
            <element name="permissiveness" title="Permissivité">
               <desc0>Licence très stricte, comme la GPL</desc0>
               <desc1>Licence modérée entre les deux extrêmes (GPL et BSD), licence duale dépendante du type d'utilisateur (personne, société…) ou de leur activité</desc1>
               <desc2>Licence très permissive comme BSD et Apache</desc2>
               <score>1</score>
               <comment>Licence MIT et licence GNU GPL (http://docs.jquery.com/Licensing)</comment>
            </element>
            <element name="protectionagainstproprietaryforks" title="Protection contre des forks commerciaux">
               <desc0>Licence très permissive comme BSD et Apache</desc0>
               <desc1>Licence modérée entre les deux extrêmes (GPL et BSD), licence duale dépendante du type d'utilisateur (personne, société…) ou de leur activité</desc1>
               <desc2>Licence très stricte, comme la GPL</desc2>
               <score>1</score>
               <comment>Licence MIT et licence GNU GPL</comment>
            </element>
         </element>
      </element>
      <element name="industrializedsolution" title="Industrialisation">
         <desc>Niveau d'industrialisation du projet</desc>
         <element name="independenceofdevelopments" title="Indépendance des développements">
            <desc0>Développements réalisés à plus de 60% par des employés d'une seule société</desc0>
            <desc1>Développements réalisés à 60% maximum par des employés d'une seule société</desc1>
            <desc2>Développements réalisés à 20% maximum par des employés d'une seule société</desc2>
            <score>2</score>
            <comment>Mozilla Corporation</comment>
         </element>
         <element name="services1" title="Services">
            <desc></desc>
            <desc0>Pas d'offres de services identifiée</desc0>
            <desc1>Offre existante mais restreinte géographiquement ou en une seule langue ou fournie par un seul fournisseur</desc1>
            <desc2>Offre riche : plusieurs fournisseurs ou plusieurs langages</desc2>
            <score>0</score>
            <comment></comment>
         </element>
         <element name="documentation" title="Documentation">
            <desc0>Pas de documentation utilisateur</desc0>
            <desc1>La documentation existe mais est en partie obsolète ou restreinte à une seule langue ou peu détaillée</desc1>
            <desc2>Documentation à jour, traduite et éventuellement adaptée à différentes cibles de lecteurs (end-user, sysadmin, manager…)</desc2>
            <score>1</score>
            <comment>La documentation officielle est en anglais. Il existe cependant de nombreux sites francophones d'introduction à l'utilisation de jQuery. Ainsi que des livres sur le sujets (jQuery in Action, Learning jQuery).</comment>
         </element>
         <element name="methodequalite" title="Méthode qualité">
            <desc></desc>
            <desc0>Pas de processus de qualité identifié ni d'outils de gestions de bugs</desc0>
            <desc1>Processus qualité non formalisé ou non outillé ou comportant des outils qui sont très peu utilisés</desc1>
            <desc2>Utilisation très active d'outils standards (tests unitaires, outils de gestion de build, outils de mesure de qualité du code)</desc2>
            <score>2</score>
            <comment></comment>
         </element>
      </element>
      <element name="packaging" title="Packaging">
         <desc>Packaging pour les différents systèmes d'exploitation</desc>
         <element name="packagingbsd" title="BSD">
            <desc></desc>
            <desc0>Pas de packaging officiel pour la famille BSD</desc0>
            <desc1>Packaging existant pour quelques distributions de la famille BSD</desc1>
            <desc2>Packaging complet pour les distributions de la famille BSD suivantes : FreeBSD, OpenBSD, NetBSD et Mac OS X</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="packaginglinux" title="GNU/Linux">
            <desc></desc>
            <desc0>Pas de packaging officiel pour les systèmes d'exploitations GNU/Linux</desc0>
            <desc1>Packaging existant pour quelques distributions GNU/Linux</desc1>
            <desc2>Packaging complet les systèmes de packaging .deb et .rpm</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="unix" title="Unix">
            <desc></desc>
            <desc0>Pas de packaging officiel pour les systèmes de la famille Unix</desc0>
            <desc1>Packaging existant sur quelques systèmes de la famille Unix</desc1>
            <desc2>Packaging existant sur au moins ces 3 systèmes : AIX, HP-UX, Solaris</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="packagingwindows" title="Windows">
            <desc0>Le logiciel n'est pas disponible sur un système Windows.</desc0>
            <desc1>Le logiciel existe sous forme d'archive tout en un.</desc1>
            <desc2>Le logiciel dispose d'un installeur.</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="packagingsource" title="Sources">
            <desc0>L'installation depuis les sources est hasardeuse et risquée</desc0>
            <desc1>L'installation depuis les sources est difficile ou limité (seulement à un OS, une architecture, la résolution de l'écran...)</desc1>
            <desc2>L'installation depuis les sources est outillée (vérification des dépencances, verification de l'installation, gestion de build)</desc2>
            <score>2</score>
            <comment></comment>
         </element>
         <element name="packagingtar" title="Archive compressée">
            <desc0>Pas d'archive disponible</desc0>
            <desc1>Archive globale</desc1>
            <desc2>Archive séparée pour chaque module installable</desc2>
            <score>2</score>
            <comment></comment>
         </element>
      </element>
      <element name="exploitability" title="Exploitabilité">
         <desc>Niveau d'exploitabilité</desc>
         <element name="easeofuseergonomics" title="Facilité d'utilisation, ergonomie">
            <desc0>Difficulté d'utilisation, demande une connaissance approfondie des fonctionnalités du logiciel</desc0>
            <desc1>Ergonomie austère et très technique</desc1>
            <desc2>Ergonomie élaborée et IHM comprenant des fonctions d'aide</desc2>
            <score>2</score>
            <comment></comment>
         </element>
         <element name="administrationmonitoring" title="Administration et supervision">
            <desc0>Pas de fonctionnalités de contrôle, ni d'administration</desc0>
            <desc1>Fonctionnalités présentes mais incomplètes ou à améliorer</desc1>
            <desc2>Fonctionnalités complètes et faciles de contrôle et d'administration. Intégration possible avec des outils tiers (ex : SNMP, syslog…)</desc2>
            <score>0</score>
            <comment></comment>
         </element>
      </element>
      <element name="technicaladaptability" title="Adaptabilité">
         <desc>Adaptabilité technique</desc>
         <element name="modularity" title="Modularité">
            <desc0>Logiciel monolithique</desc0>
            <desc1>Présence de modules haut niveau permettant un premier niveau d'adaptation</desc1>
            <desc2>Conception modulaire, permettant des adaptations faciles par sélection et/ou création de modules</desc2>
            <score>2</score>
            <comment></comment>
         </element>
         <element name="codemodification" title="Facilité technique de modification du code existant">
            <desc0>Tout à la main</desc0>
            <desc1>Recompilation possible mais complexe, sans outils, ni documentation</desc1>
            <desc2>Recompilation facile, outillée (ex : make, ANT, Maven…) et documentée</desc2>
            <score>2</score>
            <comment>Via make ou ant </comment>
         </element>
         <element name="codeextension" title="Facilité d'extension du code">
            <desc0>Toute modification demande une recompilation du code</desc0>
            <desc1>Architecture conçue pour des extensions statiques mais exige une recompilation</desc1>
            <desc2>Architecture de plugins, conçue pour des extensions dynamiques et sans recompilation</desc2>
            <score>2</score>
            <comment></comment>
         </element>
      </element>
   </section>
   <section name="ergonomie" title="Ergonomie">
      <desc>Fonctionnalités liées à l'ergonomie des applications Web</desc>
      <element name="composantsgraphiques" title="Composants IHM">
         <desc>Composants graphiques (widgets)</desc>
         <comment></comment>
         <element name="saisie" title="Saisie">
            <desc>Composants de saisie de données</desc>
            <comment></comment>
            <element name="texte" title="Texte">
               <desc>Composants pour la saisie de type texte</desc>
               <comment></comment>
               <element name="textesimple" title="Texte simple">
                  <desc>Champ de saisie de texte simple (Text box ou Edit Field)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>0</score>
                  <comment></comment>
               </element>
               <element name="motdepasse" title="Mot de passe">
                  <desc>Champ de saisie de mot de passe</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffon externe (http://plugins.jquery.com/project/passmeter)</comment>
               </element>
               <element name="zonedetexte" title="Zone de texte">
                  <desc>Champ de saisie du texte sur plusieurs lignes (textarea)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>0</score>
                  <comment></comment>
               </element>
               <element name="texteformatte" title="Texte formatté">
                  <desc>Zone de saisie de texte formatté (Riche Text Editor)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffon externe proposant l'intégration de FCKEditor (http://plugins.jquery.com/project/FCKEditor)</comment>
               </element>
            </element>
            <element name="listes" title="Listes">
               <desc>Composants pour la saisie dans des listes</desc>
               <comment></comment>
               <element name="listesimple" title="Liste simple">
                  <desc>Sélection dans une liste simple (List box)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes sont disponibles (http://plugins.jquery.com/taxonomy/term/463)</comment>
               </element>
               <element name="listederoulante" title="Liste déroulante">
                  <desc>Sélection dans une liste déroulante (Drop-down list)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes sont disponibles (http://plugins.jquery.com/taxonomy/term/463)</comment>
               </element>
               <element name="boitecombinee" title="Boîte combinée">
                  <desc>Champ de texte avec un menu de choix attaché (Combo box)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes sont disponibles (http://plugins.jquery.com/taxonomy/term/802)</comment>
               </element>
               <element name="listeavecsuggestion" title="Liste avec suggestion">
                  <desc>Champ texte avec suggestion via une liste prédéfinie (Suggest Box)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffon externe (http://plugins.jquery.com/project/SexyCombo)</comment>
               </element>
            </element>
            <element name="champstypes" title="Champs typés">
               <desc>Composants spécialisés en fonction du type de donnée à saisir</desc>
               <comment></comment>
               <element name="nombres" title="Nombres">
                  <desc>Composants pour la saisie des nombres : curseur (slider) ou increment/décrement (spin box)</desc>
                  <desc0>Auncun composant disponible</desc0>
                  <desc1>Seul un slider (ou une spin box) est disponible</desc1>
                  <desc2>Slider et spin box sont disponibles</desc2>
                  <score>1</score>
                  <comment>Composant Slider très complet (http://jqueryui.com/demos/slider). Greffon externe pour spin box (http://plugins.jquery.com/project/spin-button).</comment>
               </element>
               <element name="montants" title="Montants">
                  <desc>Composants pour la saisie des montants monétaires</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffons externes disponibles (http://plugins.jquery.com/taxonomy/term/1349)</comment>
               </element>
               <element name="temps" title="Temps">
                  <desc>Composants pour la saisie de dates et heures</desc>
                  <desc0>Aucun composant disponible</desc0>
                  <desc1>Pas de calendrier ou de saisie assistée d'heure en fonction de la localisation</desc1>
                  <desc2>Calendier et saisie assistée de l'heure en fonction de la localisation</desc2>
                  <score>1</score>
                  <comment>Il existe un composant offrant une saisie de date assistée via un calendrier (http://jqueryui.com/demos/datepicker/). Il n'y a pas de champ typé pour les heures.</comment>
               </element>
            </element>
            <element name="validation" title="Validation">
               <desc>Mécanisme intégrés de validation de la saisie</desc>
               <desc0>Aucun mécanisme de validation disponible</desc0>
               <desc1>Validation limitée à certains type de saisie (email, URL, ...)</desc1>
               <desc2>Validation possible via des modèles ou des expressions régulières</desc2>
               <score>1</score>
               <comment>Plusieurs greffons externes disponibles (http://plugins.jquery.com/taxonomy/term/68)</comment>
            </element>
         </element>
         <element name="collections" title="Collections">
            <desc>Composants de restitution et de saisie de collections</desc>
            <comment></comment>
            <element name="boutons" title="Boutons">
               <desc></desc>
               <comment></comment>
               <element name="caseacocher" title="Case à cocher">
                  <desc>Case à cocher (Check box)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Nombreux greffons externes disponibles proposant des alternatives au HTML classique</comment>
               </element>
               <element name="boutonradio" title="Bouton radio">
                  <desc>Bouton radio (Radio button)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffon externe disponible (http://plugins.jquery.com/project/radiobutton-checkbox-replacement)</comment>
               </element>
               <element name="boutonbascule" title="Bouton bascule">
                  <desc>Bouton bascule (Toggle button)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Greffon externe Togglebox (http://plugins.jquery.com/project/togglebox)</comment>
               </element>
            </element>
            <element name="menus" title="Menus">
               <desc></desc>
               <comment></comment>
               <element name="menudecommande" title="Menu de commande">
                  <desc>Menu de commande (Command menu)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes permettent de créer des menus (http://plugins.jquery.com/project/Plugins/category/44)</comment>
               </element>
               <element name="menucontextuel" title="Menu contextuel">
                  <desc>Menu contextuel (Context menu)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes permettent de créer des menus (http://plugins.jquery.com/project/Plugins/category/44)</comment>
               </element>
               <element name="menucirculaire" title="Menu circulaire">
                  <desc>Menu circulaire (Pie menu)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>0</score>
                  <comment></comment>
               </element>
            </element>
            <element name="listesstructurees" title="Listes structurées">
               <desc></desc>
               <comment></comment>
               <element name="listearborescente" title="Liste arborescente">
                  <desc>Liste arborescente (Tree view)</desc>
                  <desc0>Composant non disponible</desc0>
                  <desc1>Composant disponible mais sans chargement par partie (lazy loading)</desc1>
                  <desc2>Composant disponible avec chargement par partie (lazy loading)</desc2>
                  <score>1</score>
                  <comment>Quelques greffons externes permettent de gérer des arbres, tels que TreeTable (http://plugins.jquery.com/project/treeTable). Cf. http://plugins.jquery.com/taxonomy/term/428</comment>
               </element>
               <element name="vuetabulaire" title="Vue tabulaire">
                  <desc>Vue tabulaire (Grid view)</desc>
                  <desc0>Composant non disponible</desc0>
                  <desc1>Composant disponible mais sans chargement par partie (lazy loading)</desc1>
                  <desc2>Composant disponible avec chargement par partie (lazy loading)</desc2>
                  <score>1</score>
                  <comment>Plusieurs greffons externes permettent des gérer des vues tabulaires (http://plugins.jquery.com/taxonomy/term/811)</comment>
               </element>
            </element>
         </element>
         <element name="retourutilisateur" title="Retour utilisateur">
            <desc>Composants d'aide au retour utilisateur</desc>
            <comment></comment>
            <element name="arredeprogressionb" title="Barre de progression">
               <desc>Barre de progression (Progress bar)</desc>
               <desc0>Composant indisponible</desc0>
               <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
               <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
               <score>2</score>
               <comment>Composant Progressbar (http://jqueryui.com/demos/progressbar/)</comment>
            </element>
            <element name="barredetat(statusbar)" title="Barre d'état">
               <desc>Barre d'état (Status bar)</desc>
               <desc0>Composant indisponible</desc0>
               <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
               <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
               <score>0</score>
               <comment></comment>
            </element>
            <element name="bulledaide" title="Bulle d'aide">
               <desc>Bulle d'aide (Tooltip)</desc>
               <desc0>Composant indisponible</desc0>
               <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
               <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
               <score>1</score>
               <comment>Une vingtaine de greffons externes disponibles</comment>
            </element>
            <element name="notificationglissante" title="Zone de notification">
               <desc>Zone de notification apparissant uniquement lorsque nécessaire, en général au dessus de la barre de statut (Toaster)</desc>
               <desc0>Composant indisponible</desc0>
               <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
               <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
               <score>1</score>
               <comment>Plusieurs greffons externes permettent la notification discrète de l'utilisateur (http://plugins.jquery.com/taxonomy/term/229)</comment>
            </element>
         </element>
         <element name="conteneurs" title="Conteneurs">
            <desc>Composants de regourpement d'autres composants</desc>
            <comment></comment>
            <element name="cadres" title="Cadres">
               <desc>Cadres (Frame ou Panel)</desc>
               <comment></comment>
               <element name="cadredecoratif" title="Cadre décoratif">
                  <desc>Cadre décoratif (Decorator Panel)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>0</score>
                  <comment></comment>
               </element>
               <element name="cadresdepositionnement" title="Cadres de positionnement">
                  <desc>Cadres de positionnement : horizontal, vertical, continu, orienté (dock), avec règlette (split)</desc>
                  <desc0>Pas de cadres de positionnement</desc0>
                  <desc1>Seuls quelques cadres de positionnement sont disponibles</desc1>
                  <desc2>Cadres de positionnement  horizontal, vertical, continu, orienté (dock), avec règlette (split)</desc2>
                  <score>1</score>
                  <comment>Greffon externe pour créer des cadres orientés (http://jx.myofiz.com/jxviewport.html)</comment>
               </element>
               <element name="cadreempile" title="Cadre empilé">
                  <desc>Cadre empilé (Stack Panel ou Accordion)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>2</score>
                  <comment>http://jqueryui.com/demos/accordion</comment>
               </element>
            </element>
            <element name="onglet" title="Onglet">
               <desc>Onglet (Tab)</desc>
               <desc0>Composant indisponible</desc0>
               <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
               <desc2></desc2>
               <score>2</score>
               <comment>Composant Tabs (http://jqueryui.com/demos/tabs/). Possibilité de charger le contenu des onglets de manière asynchrone.</comment>
            </element>
            <element name="fenetres" title="Fenêtres">
               <desc></desc>
               <comment></comment>
               <element name="fenetresimple" title="Fenêtre simple">
                  <desc></desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>2</score>
                  <comment>Un composant Dialog est disponible (http://jqueryui.com/demos/dialog/)</comment>
               </element>
               <element name="fenetremodale" title="Fenêtre modale">
                  <desc>Fenêtre modale (Modal window)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>2</score>
                  <comment>Le composant Dialog possède une option modal (/http://jqueryui.com/demos/dialog/#modal-message)</comment>
               </element>
               <element name="boitededialogue" title="Boîte de dialogue">
                  <desc>Boîte de dialogue (Dialog box)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>2</score>
                  <comment>Le composant Dialog est disponible (http://jqueryui.com/demos/dialog/#modal-confirmation/)</comment>
               </element>
               <element name="paletteflottante" title="Palette flottante">
                  <desc>Palette flottante (Utility window)</desc>
                  <desc0>Composant indisponible</desc0>
                  <desc1>Composant disponible mais limité, pas documenté ou difficile à utiliser</desc1>
                  <desc2>Composant disponible, bien documenté et facile à mettre en oeuvre</desc2>
                  <score>0</score>
                  <comment></comment>
               </element>
            </element>
         </element>
         <element name="composantsevolues" title="Composants évolués">
            <desc>Gallerie d'images, Graphes, Sélectionneur de couleur, ...</desc>
            <desc0>Aucun composant évolué n'est disponible</desc0>
            <desc1>Seul un nombre restreint de composants évolués est disponible</desc1>
            <desc2>De nombreux composants évolués sont disponibles</desc2>
            <score>2</score>
            <comment>De nombreux composants évolués sont disponibles sous forme de greffons</comment>
         </element>
      </element>
      <element name="effetsanimes" title="Effets animés">
         <desc>Effets d'animations disponibles</desc>
         <comment>http://jqueryui.com/docs/Effects/Types</comment>
         <element name="effetsdebase" title="Effets de base">
            <desc>Montrer/Show, Cacher/Hide, aggrandir/slide, estomper/fade</desc>
            <desc0>Aucun effet de base n'est disponible</desc0>
            <desc1>Seule une partie des effets de base est disponible</desc1>
            <desc2>Tous les effets de base sont disponibles</desc2>
            <score>2</score>
            <comment>show, hide, slide, puff</comment>
         </element>
         <element name="effetsavances" title="Effets avancés">
            <desc>Rebondissement/Bounce, Explosion/Explode, Replier/Fold, Surbrillance/Highlight, Eclatement/Puff, Pulsasion/Pulsate, Temblement/Shake, ...</desc>
            <desc0>Aucun effet avancé n'est disponible</desc0>
            <desc1>Seuls quelque effets sont disponibles</desc1>
            <desc2>De nombreux effets sont disponibles</desc2>
            <score>2</score>
            <comment>'blind', 'bounce', 'clip', 'drop', 'explode', 'fold', 'highlight', 'puff', 'pulsate', 'scale', 'shake', 'size', 'slide', 'transfer'. Le greffon externe jQuery Easing offre de nombreux autres effets (http://gsgd.co.uk/sandbox/jquery/easing/)</comment>
         </element>
         <element name="animations" title="Animations">
            <desc>Animations gérées par le moteur</desc>
            <desc0>Pas d'animation</desc0>
            <desc1>Animation via l'évolution graduelle d'un attribut CSS</desc1>
            <desc2>Possibilité de composer les animations CSS</desc2>
            <score>2</score>
            <comment>Via les méthodes SwitchClass (http://jqueryui.com/demos/switchClass/) ou ToggleClass (http://jqueryui.com/demos/toggleClass/)</comment>
         </element>
         <element name="interactionsutilisateur" title="Interactions utilisateur">
            <desc>Possibilité d'interaction de l'utilisateur avec l'IHM</desc>
            <comment></comment>
            <element name="glisser/deposer" title="Glisser/Déposer">
               <desc>Gestion du Glisser/Déposer</desc>
               <desc0>Pas de gestion du Glisser/Déposer</desc0>
               <desc1>Glisser/Déposer disponible mais pas sur tous les éléments graphiques</desc1>
               <desc2>Glisser/Déposer disponible sur tous les éléments graphiques</desc2>
               <score>2</score>
               <comment>Via les interactions draggable (http://jqueryui.com/demos/draggable/) et dropable (http://jqueryui.com/demos/droppable/)</comment>
            </element>
            <element name="resimensionner" title="Resimensionner">
               <desc>L'utilisateur peu redimensionner un élément</desc>
               <desc0>Pas de redimensionnement possible</desc0>
               <desc1>Redimensionnement possible mais limité à certains usages</desc1>
               <desc2>Redimensionnement possible sans limitation d'usage</desc2>
               <score>2</score>
               <comment>Via l'interaction Resizeable (http://jqueryui.com/demos/resizable/)</comment>
            </element>
            <element name="selectionner" title="Sélectionner">
               <desc>L'utilisateur peut sélectionner un élément ou un cadre</desc>
               <desc0>Pas de sélection possible</desc0>
               <desc1>Sélection possible mais limitée en termes d'usage</desc1>
               <desc2>Sélection possible sans limitation en termes d'usages</desc2>
               <score>2</score>
               <comment>Via l'interaction Selectable  (http://jqueryui.com/demos/selectable/)</comment>
            </element>
         </element>
      </element>
      <element name="multimediaetflux" title="Multimédia">
         <desc>Possibilité d'intégrer des médias (audio / vidéo / dessin )</desc>
         <comment></comment>
         <element name="audio" title="Audio">
            <desc>Intégration de flux audio</desc>
            <desc0>Fonctionnalité non présente</desc0>
            <desc1>Fonctionnalité limitée ou difficile à mettre en oeuvre</desc1>
            <desc2>Fonctionnalité présente et facile à mettre en oeuvre</desc2>
            <score>1</score>
            <comment>Greffon externe pour manipuler des sons via Flash (http://plugins.jquery.com/project/sound)</comment>
         </element>
         <element name="video" title="Vidéo">
            <desc>Intégration de flux vidéo</desc>
            <desc0>Fonctionnalité non présente</desc0>
            <desc1>Fonctionnalité limitée ou difficile à mettre en oeuvre</desc1>
            <desc2>Fonctionnalité présente et facile à mettre en oeuvre</desc2>
            <score>1</score>
            <comment>Nombreux greffons externes disponibles (http://plugins.jquery.com/project/Plugins/category/52)</comment>
         </element>
         <element name="dessin2d" title="Dessin 2D">
            <desc>Intégration de dessin 2D</desc>
            <desc0>Fonctionnalité non présente</desc0>
            <desc1>Fonctionnalité limitée ou difficile à mettre en oeuvre</desc1>
            <desc2>Fonctionnalité présente et facile à mettre en oeuvre</desc2>
            <score>1</score>
            <comment>Greffons externes pour l'intégration SVG (http://plugins.jquery.com/project/svg) et les objets canvas (http://plugins.jquery.com/project/canvas)</comment>
         </element>
         <element name="dessin3d" title="Dessin 3D">
            <desc>Intégration de dessin 3D</desc>
            <desc0>Fonctionnalité non présente</desc0>
            <desc1>Fonctionnalité limitée ou difficile à mettre en oeuvre</desc1>
            <desc2>Fonctionnalité présente et facile à mettre en oeuvre</desc2>
            <score>0</score>
            <comment></comment>
         </element>
      </element>
      <element name="manipulationdelapage" title="Manipulation de la page">
         <desc>Fonctionnalités de sélection (query) et de modification d'objets dans la page HTML</desc>
         <comment>Un des forces de jQuery (d'où son nom)</comment>
         <element name="selection" title="Sélection">
            <desc>Sélection d'objets dans la page HTML</desc>
            <comment></comment>
            <element name="paridentifiant" title="Par identifiant">
               <desc>Sélection d'objets par leurs identifiants HTML</desc>
               <desc0>Pas de sélection par identifiant HTML</desc0>
               <desc1>Sélection possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>http://docs.jquery.com/Selectors/id</comment>
            </element>
            <element name="parcss" title="Par CSS">
               <desc>Sélection d'objets par classe CSS</desc>
               <desc0>Pas de sélection par classe CSS</desc0>
               <desc1>Sélection possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>http://docs.jquery.com/Selectors/class</comment>
            </element>
            <element name="parnavigationdom" title="Par navigation DOM">
               <desc>Sélection d'objets par navigation DOM</desc>
               <desc0>Pas de sélection par navigation dans l'arbre DOM</desc0>
               <desc1>Sélection possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>http://docs.jquery.com/Selectors/descendant, http://docs.jquery.com/Selectors/child, http://docs.jquery.com/Selectors/next,http://docs.jquery.com/Selectors/siblings, filtres : :first-child, :last-child, :only-child.</comment>
            </element>
            <element name="parposition" title="Par position">
               <desc>Sélection d'objets par leurs positions dans la page (index)</desc>
               <desc0>Pas de sélection par position dans la page</desc0>
               <desc1>Sélection possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>Filtres disponibles sur les positions : :first, :last, :eq(index), :gt(index), :lt(index)</comment>
            </element>
            <element name="parfiltrage" title="Par filtrage">
               <desc>Sélection d'objets via un filtre (expression ou résultat de fonction JavaScript)</desc>
               <desc0>Pas de sélection par filtrage</desc0>
               <desc1>Sélection possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Filtrage possible via la vérification d'une expression ou le résultat d'une fonction</desc2>
               <score>2</score>
               <comment>Via filtre textuel ':contains' (http://docs.jquery.com/Selectors/contains), filtre sur expression ou retour de fonction (http://docs.jquery.com/Traversing/filter) ou filtre logique (http://docs.jquery.com/Traversing/is)</comment>
            </element>
         </element>
         <element name="modification" title="Modification">
            <desc>Modification d'objet dans la page HTML</desc>
            <comment></comment>
            <element name="valeur" title="Valeur">
               <desc>Modification de valeurs (InnerHTML)</desc>
               <desc0>Pas de modification possible de la valeur d'un élément HTML</desc0>
               <desc1>Modification possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>Via les fonctions html() (http://docs.jquery.com/Attributes/html) et text() (http://docs.jquery.com/Attributes/text)</comment>
            </element>
            <element name="classecss" title="Classe CSS">
               <desc>Modification de la classe CSS d'un élément de la page</desc>
               <desc0>Pas de modification possible de la classe CSS d'un élément HTML</desc0>
               <desc1>Modification possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>Via la fonction css() (http://docs.jquery.com/CSS/css)</comment>
            </element>
            <element name="attribut" title="Attribut">
               <desc>Modification des attributs d'un élément HTML</desc>
               <desc0>Pas de modification possible d'un attributHTML</desc0>
               <desc1>Modification possible mais limitée ou difficile à mettre en oeuvre</desc1>
               <desc2>Fonctionnalité offerte par le moteur</desc2>
               <score>2</score>
               <comment>Via la fonction attr() (http://docs.jquery.com/Attributes/attr)</comment>
            </element>
            <element name="dom" title="DOM">
               <desc>Modification de l'arbre DOM</desc>
               <desc0>Pas de modification de l'arbre DOM possible</desc0>
               <desc1>Insertion et suppression d'éléments de l'arbre DOM</desc1>
               <desc2>Modifications avancées. De type : insérer avant, insérer après, insérer autour d'un élément</desc2>
               <score>2</score>
               <comment>Inserer à l'intérieur d'un élement : append(), appendTo(), prepend(), prependTo(), inserer à l'extérieur d'un élement : after(), before(), insertAfter(), insertBefore(), inserer à autour d'un élement : wrap(), wrapAll(), wrapInner()</comment>
            </element>
         </element>
      </element>
      <element name="themes" title="Thèmes">
         <desc>Possibilité d'utiliser des thèmes</desc>
         <desc0>Pas de thème possible</desc0>
         <desc1>Seuls des thèmes pré-définis sont utilisables</desc1>
         <desc2>Il est possible de définit ses propres thème ou un outil d'aide à la génération de thèmes est disponible</desc2>
         <score>2</score>
         <comment>Il est possible de définir des thèmes en se basant sur CSS (http://jqueryui.com/docs/Theming). Un outil en ligne est diponible pour créer ses propres thèmes : http://jqueryui.com/themeroller/</comment>
      </element>
   </section>
   <section name="fonctionnalitesnongraphiques" title="Fonctionnalités non graphiques">
      <desc>Fonctionnalités non graphiques offertes par le moteur</desc>
      <element name="evenements" title="Evènements">
         <desc>Gestion des évènements</desc>
         <comment>http://docs.jquery.com/Events</comment>
         <element name="evenementsnavigateur" title="Evènements navigateur">
            <desc>Abstraction des évènements des navigateurs</desc>
            <desc0>Pas d'abstraction des évènements des navigateurs</desc0>
            <desc1>Il existe une couche d'abstraction des évènements des navigateurs</desc1>
            <desc2>Il existe une couche d'abstraction des évènements des navigateurs et le moteur permet de déclencher ces évènement de manière programmatique</desc2>
            <score>2</score>
            <comment>Possibilité de déclencher un évènement sur un ou plusieurs élements (http://docs.jquery.com/Events/trigger)</comment>
         </element>
         <element name="evenementsnongraphiques" title="Evènements non graphiques">
            <desc>Capacité du moteur à gérer d'autres évènements que ceux du navigateur</desc>
            <desc0>Pas de gestion d'évènements autres que ceux du navigateur</desc0>
            <desc1>Quelques évènements hors navigateur sont géré</desc1>
            <desc2>La notion d'évènement est généralisée à tout appel de fonction</desc2>
            <score>2</score>
            <comment>Cette fonctionnalité est implémentable via l'utilisation des fonctions bind et trigger en créant de nouveaux types d'évènements</comment>
         </element>
         <element name="comportementsrepetitifs" title="Comportements répétitifs">
            <desc>Possibilité de définir un comportement par défaut à un évènement</desc>
            <desc0>Fonctionnalité non disponible</desc0>
            <desc1>Fonctionnalité disponible mais limitée ou complexe à mettre en oeuvre</desc1>
            <desc2>Possibilité de définir un comportement par défaut à un évènement</desc2>
            <score>2</score>
            <comment>Association d'un traitement à un évènement sur tous les éléments qualifiables actuels ou à venir (http://docs.jquery.com/Events/live et http://docs.jquery.com/Events/die)</comment>
         </element>
         <element name="abonnement" title="Abonnement">
            <desc>Publish/Suscribe : échange de messages par abonnement à un topic</desc>
            <desc0>Pas de fonctionnalité d'abonnement de type Publish/Suscribe</desc0>
            <desc1>Fonctionnalité de type Publish/Suscribe mais limitée ou complexe à mettre en oeuvre</desc1>
            <desc2>Echange de messages par abonnement à un topic</desc2>
            <score>1</score>
            <comment>Uniquement sur les évènements liés à la communication asynchrone AJAX</comment>
         </element>
         <element name="chainageetinterception" title="Chaînage et interception">
            <desc>Chaînage et interception d'évènements</desc>
            <desc0>Pas de possibilité de chaîner ou d'intercepter des évènements</desc0>
            <desc1>Chaînage d'évènements possible, mais pas de fonctionnalité d'interception d'évènements</desc1>
            <desc2>Possibilité de chaîner et d'intercepter des évènements</desc2>
            <score>1</score>
            <comment>La syntaxe jQuery permet de chainer les évènements.</comment>
         </element>
      </element>
      <element name="communication" title="Communication">
         <desc>Modes de communication supportés avec le serveur</desc>
         <comment></comment>
         <element name="modeasynchrone" title="Mode asynchrone">
            <desc>Communication asynchrone avec le serveur</desc>
            <comment></comment>
            <element name="asynchronismebasniveau" title="Asynchronisme bas niveau">
               <desc>Communication asynchrone de bas niveau avec le serveur</desc>
               <desc0>Pas de communication asynchrone possible</desc0>
               <desc1>Communication asynchrone impossible avec d'autres serveurs</desc1>
               <desc2>Communication asynchrone possible avec d'autres serveurs (proxy)</desc2>
               <score>1</score>
               <comment>Communication basée sur l'utilisation de XmlHttpRequest</comment>
            </element>
            <element name="appelsrpc" title="Appels RPC">
               <desc>Encapsulation et simplification des appels distants via une couche de type RPC</desc>
               <desc0>Pas d'appels type RPC</desc0>
               <desc1>Communication de type RPC disponible mais limitée ou complexe à utiliser</desc1>
               <desc2>Couche de haut niveau de type RPC disponible</desc2>
               <score>0</score>
               <comment></comment>
            </element>
         </element>
         <element name="modedeconnecte" title="Mode déconnecté">
            <desc>Possibilité de gérer le mode déconnecté</desc>
            <desc0>Pas de mode déconnecté possible en standard</desc0>
            <desc1>Mode déconnecté possible mais pas véritablement intégré au moteur</desc1>
            <desc2>Mode déconnecté complètement intégré au moteur</desc2>
            <score>0</score>
            <comment></comment>
         </element>
         <element name="modepush" title="Mode Push">
            <desc>Possibilité de gérer une communication bi-directionnelle avec le serveur, notamment des appels initiés par le serveur</desc>
            <desc0>Pas de communication bi-directionnelle avec le serveur</desc0>
            <desc1>Mode Push possible mais limité et complexe à utiliser</desc1>
            <desc2>Mode Push complétement intégré dans le moteur</desc2>
            <score>0</score>
            <comment>jQuery est un moteur utilisé coté client.</comment>
         </element>
      </element>
      <element name="accesauxdonnees" title="Accès aux données">
         <desc>Fonctionnalités offertes pour accéder à des données locale ou distantes</desc>
         <comment></comment>
         <element name="donneeslocales" title="Données locales">
            <desc>Fonctionnaliés de stockage et d'accès aux données locales au poste de travail</desc>
            <desc0>Pas de stockage ni d'accès aux données locales </desc0>
            <desc1>Simple surcouche à l'utilisation des cookies HTTP</desc1>
            <desc2>Possibilité de stocker et d'accéder à des données plus volumineuses que les cookies</desc2>
            <score>1</score>
            <comment>Plusieurs greffons externes disponibles pour simplifier la gestion des cookies (http://plugins.jquery.com/taxonomy/term/460). Le greffon externe jStore propose une couche d'abstraction à différentes méthodes de stockage en fonction du navigateur (Google Gears, Flash, HTML 5, ...)</comment>
         </element>
         <element name="donneesdistantes" title="Données distantes">
            <desc>Fonctionnaliés d'accès aux données distantes</desc>
            <desc0>Pas d'accès à des données distantes </desc0>
            <desc1>Accès limité à celui offert par XmlHTTPRequest : non typé</desc1>
            <desc2>Accès possible à des données typées comme JSON, RSS, ...</desc2>
            <score>2</score>
            <comment>Accès AJAX via GET (jQuery.get), via POST (jQuery.post), de type JSON (jQuery.getJSON) et pour charger/exécuter des scripts (jQuery.getScript)</comment>
         </element>
      </element>
      <element name="programmationjavascript" title="Programmation JavaScript">
         <desc>Extensions au langage JavaScript facilitant la programmation</desc>
         <comment></comment>
         <element name="espacesdenoms" title="Espaces de noms">
            <desc>Espaces de noms (namespaces)</desc>
            <desc0>Le moteur n'est pas isolé dans un namespace dédié</desc0>
            <desc1>Le moteur possède son namespace mais ne permet pas d'en créer de nouveaux</desc1>
            <desc2>Le moteur possède son namespace et permet d'en créer de nouveaux</desc2>
            <score>1</score>
            <comment>Tout le moteur est dans l'espace de nom jQuery, sauf la fonction $ (il existe des techniques pour gérer les conflits : http://docs.jquery.com/Using_jQuery_with_Other_Libraries).</comment>
         </element>
         <element name="classes" title="Classes">
            <desc>Extension de JavaScript pour implémenter un modèle d'héritage par classes</desc>
            <comment></comment>
            <element name="declarartiondeclasse" title="Déclarartion de classe">
               <desc></desc>
               <desc0>Pas de modèle de classe</desc0>
               <desc1>Déclaration de classe complexe</desc1>
               <desc2>Déclaration de classe utilisable comme une fonctionnalité de base du langage</desc2>
               <score>0</score>
               <comment>jQuery ne propose pas d'implémentation de modèle de classe. Les objets sont extensibles (via le modèle par prototype) avec la fonction extend.  John Resig, le concepteur de jQuery, propose Calssy Query (http://ejohn.org/blog/classy-query/).</comment>
            </element>
            <element name="classesstatiques" title="Classes statiques">
               <desc>Possibilité de déclarer des classes statiques</desc>
               <desc0>Pas de classes statiques</desc0>
               <desc1>Classes statiques disponibles mais limitées ou complexes à utiliser</desc1>
               <desc2>Classes statiques disponibles</desc2>
               <score>0</score>
               <comment></comment>
            </element>
         </element>
         <element name="heritage" title="Héritage">
            <desc>Héritage selon le modèle de classes</desc>
            <desc0>Pas d'héritage de classes</desc0>
            <desc1>Héritage de classes simple</desc1>
            <desc2>Héritage de classes mixte : possibilité de mixer plusieurs classes dans l'héritage</desc2>
            <score>0</score>
            <comment></comment>
         </element>
         <element name="fonctionsutilitaires" title="Fonctions utilitaires">
            <desc>Fonctions utilitaires mises à disposition par le moteur</desc>
            <desc0>Aucune fonction utilitaire disponible</desc0>
            <desc1>Quelques fonctions utilitaires disponibles mais limité à un domaine</desc1>
            <desc2>Nombreuses fonctions utilitaires disponibles dans différents domaines (types, sécurité, etc...)</desc2>
            <score>2</score>
            <comment>jQuery offre plusieurs fonctions utilitaires : http://docs.jquery.com/Utilities</comment>
         </element>
      </element>
   </section>
   <section name="utilisabilite" title="Utilisabilité">
      <desc>Fonctionnalité facilitant l'utilisation du moteur ou des applications développées avec</desc>
      <element name="extensibilite" title="Extensibilité">
         <desc>Capacité du moteur a être étendu</desc>
         <comment></comment>
         <element name="composantsgraphiques1" title="Composants graphiques">
            <desc>Possibilité d'étendre les composants graphiques du moteur (widgets)</desc>
            <desc0>Pas d'extension de composants graphiques</desc0>
            <desc1>Possibilité d'étendre les composants graphique</desc1>
            <desc2>Possibilité d'étendre les composants graphique et d'utiliser des templates</desc2>
            <score>1</score>
            <comment>Possibilité de créer des composants graphiques personnalisés (http://jqueryui.com/docs/Developer_Guide)</comment>
         </element>
         <element name="pointsdextension" title="Moteur">
            <desc>Présence de points d'extension de traitements du moteur</desc>
            <desc0>Pas d'extension des traitements du moteur</desc0>
            <desc1>Quelques points d'extension des traitements du moteur mais complexes à utiliser</desc1>
            <desc2>Le moteur est véritablement ouvert et possède de nombreux points d'extension</desc2>
            <score>2</score>
            <comment>Le moteur possède une architecture conçue pour permettre l'extension via des greffons. Il est possible de développer ses propres greffons (http://docs.jquery.com/Plugins/Authoring). L'objet jQuery peut également être étendu.</comment>
         </element>
         <element name="codeexterne" title="Code externe">
            <desc>Possibilité d'intégrer du code externe au moteur dans le moteur</desc>
            <desc0>Impossible d'intégrer du code externe</desc0>
            <desc1>Intégration de code externe possible mais limitée ou complexe</desc1>
            <desc2>Le moteur prévoit d'intégrer du code externe et de le gérer comme ses propres modules</desc2>
            <score>2</score>
            <comment>Le moteur possède une architecture conçue pour permettre l'extension via des greffons. Les fonctions d'un greffon deviennent utilisables au sein du moteur.</comment>
         </element>
      </element>
      <element name="portabilite" title="Portabilité">
         <desc>Portabilité du code</desc>
         <comment></comment>
         <element name="navigateurssupportes" title="Navigateurs supportés">
            <desc>Moteur de rendu HTML supportés</desc>
            <comment>http://docs.jquery.com/Browser_Compatibility</comment>
            <element name="gecko" title="Gecko">
               <desc>Iceweasel, epiphany, firefox</desc>
               <desc0>Non supporté</desc0>
               <desc1>Supporté pour les dernières versions (Gecko 2.0)</desc1>
               <desc2>Toutes les versions sont supportées</desc2>
               <score>1</score>
               <comment>Firefox 2.0 et plus </comment>
            </element>
            <element name="khtml/webkit" title="KHTML / WebKit">
               <desc>Konqueror, webcore (safari, chrome)</desc>
               <desc0>Non supporté</desc0>
               <desc1>WebKit est supporté</desc1>
               <desc2>KHTML et WebKitsont  supportés</desc2>
               <score>1</score>
               <comment>jQuery fonctionne avec Google Chrome et Konqueror. Sur ce dernier navigateur les tests ne sont pas systématiques.</comment>
            </element>
            <element name="tasman" title="Tasman">
               <desc>IE sous Mac</desc>
               <desc0>Non supporté</desc0>
               <desc1>Partiellement supporté</desc1>
               <desc2>Supporté</desc2>
               <score>1</score>
               <comment></comment>
            </element>
            <element name="trident" title="Trident">
               <desc>IE sous windows</desc>
               <desc0>Non supporté</desc0>
               <desc1>Seul IE7 ou seul IE6 est supporté</desc1>
               <desc2>IE6 et IE7 supportés</desc2>
               <score>2</score>
               <comment>Internet Explorer 6 et plus </comment>
            </element>
            <element name="presto" title="Presto">
               <desc>Opéra</desc>
               <desc0>Non supporté</desc0>
               <desc1>Opéra supporté à partir de la version 9.1</desc1>
               <desc2>Opéra supporté à partir de la version 8.5</desc2>
               <score>1</score>
               <comment>Opera 9 et plus</comment>
            </element>
         </element>
         <element name="accessibilite" title="Accessibilité">
            <desc>Fonctionnalités prévues pour gérer l'accessibilité</desc>
            <desc0>Aucune fonctionnalité d'accessibilité</desc0>
            <desc1>Quelques fonctionnalités disponibles</desc1>
            <desc2>Véritable stratégie de gestion de l'accessibilité visant le support des recommendations WAI du W3C</desc2>
            <score>1</score>
            <comment>Il existe une liste dédiée à l'accessibilité (http://groups.google.com/group/jquery-a11y). Quelques greffons externes proposent des fonctionnalités d'optimisation de l'accessibilité (http://plugins.jquery.com/taxonomy/term/88);</comment>
         </element>
         <element name="internationalisation" title="Internationalisation">
            <desc>Fonctionnalité permettant de gérer l'internationalisation</desc>
            <desc0>Pas de fonctionnalité d'internationalisation</desc0>
            <desc1>Fonctionnaliés d'internationnalition disponibles mais limités</desc1>
            <desc2>Fonctionnaliés avancées d'internationnalition comme les locales</desc2>
            <score>1</score>
            <comment>Plusieurs greffons externes proposent des fonctionnalités tels que la localisation JavaScript ou le chargement asynchrone de fichiers de traduction (http://plugins.jquery.com/search/node/internationalization).</comment>
         </element>
         <element name="multiclient" title="Multi cibles">
            <desc>Capacité du moteur à s'adapter à des clients de types différents (PC, terminaux mobiles, ...)</desc>
            <desc0>Seuls les navigateurs de PC sont supportés</desc0>
            <desc1>Quelques fonctionnalités facilitent l'adpatation à cibles autres que PC</desc1>
            <desc2>Le moteur est conçu pour gérer l'hétérogénéité des cibles</desc2>
            <score>1</score>
            <comment>Des greffons externes existent pour la gestion du 'Touch' sur iPod/iPhone (http://plugins.jquery.com/project/touch), des composants et des thèmes pour les navigateurs mobiles basés sur WebKit (http://plugins.jquery.com/project/jqtouch)</comment>
         </element>
         <element name="modenonajax" title="Mode non AJAX">
            <desc>Possibiliter de disposer d'un mode non AJAX</desc>
            <desc0>Seul le mode AJAX est possible</desc0>
            <desc1>Certaines alternatives non AJAX sont disponibles</desc1>
            <desc2>Le moteur permet de générer des versions non AJAX du code</desc2>
            <score>0</score>
            <comment></comment>
         </element>
      </element>
      <element name="securite" title="Sécurité">
         <desc>Mécanismes de protection disponibles contre les attaques de type XSS ou CSRF</desc>
         <comment></comment>
         <element name="protectionxss" title="Protection XSS">
            <desc>Protection coté client contre le XSS (Cross-site Scripting)</desc>
            <desc0>Pas de protection contre le XSS</desc0>
            <desc1>La protection contre le XSS est limitée et complexe à mettre en oeuvre</desc1>
            <desc2>Le moteur propose des solutions pour se protéger du XSS</desc2>
            <score>0</score>
            <comment>JQuery est une technologie centrée sur le client.</comment>
         </element>
         <element name="protectioncsrf" title="Protection CSRF">
            <desc>Protection coté client contre le CSRF (Cross-site request forgery) : éviter que l'utilisation d'un cookie encore actif ne puisse être détournée à l'insu de l'utilisateur</desc>
            <desc0>Pas de protection contre le CSRF</desc0>
            <desc1>La protection contre le CSRF est limitée et complexe à mettre en oeuvre</desc1>
            <desc2>Le moteur propose des solutions pour se protéger du CSRF</desc2>
            <score>0</score>
            <comment></comment>
         </element>
      </element>
      <element name="empaquetage" title="Empaquetage">
         <desc>Fonctionnalité liés à l'empaquetage du moteur lui-même</desc>
         <comment></comment>
         <element name="tailledumoteur" title="Taille du moteur">
            <desc>Taille en Ko du moteur de base</desc>
            <comment>JQuery fait 19 Ko compréssé. JQuery UI complet fait 298 Ko.</comment>
         </element>
         <element name="modularite" title="Modularité">
            <desc>Modularité de l'empaquetage du moteur</desc>
            <desc0>Empaquetage monolithique</desc0>
            <desc1>Empaquetage légèrement modulaire</desc1>
            <desc2>Empaquetage extrêmement modulaire</desc2>
            <score>1</score>
            <comment></comment>
         </element>
         <element name="chargementparparties" title="Chargement par parties">
            <desc>Possibilité de chargement paresseux du moteur </desc>
            <desc0>Pas de chargement paresseux des modules</desc0>
            <desc1>Les modules peuvent être chargés séparemment</desc1>
            <desc2>Les modules peuvent être chargés de manière asynchrone et uniquement quand cela est nécessaires</desc2>
            <score>0</score>
            <comment></comment>
         </element>
         <element name="empaquetagepersonnalise" title="Empaquetage personnalisé">
            <desc>Possibilité de générer son propre empaquetage du moteur</desc>
            <desc0>Impossible de générer son propre empaquetage du moteur</desc0>
            <desc1>Empaquetage personnalisé possible</desc1>
            <desc2>Empaquetage personnalisé  avec possibilité d'intégrer des libraries externes</desc2>
            <score>1</score>
            <comment>jQuery peut être empaqueté via make ou ant (http://docs.jquery.com/Downloading_jQuery), le site http://jqueryui.com/download permet de générer un empaquetage de jQuery UI ne contenant uniquement que les composants désirés.</comment>
         </element>
      </element>
      <element name="outillage" title="Outillage">
         <desc>Outils de développement disponibles</desc>
         <comment></comment>
         <element name="outildeveloppement" title="Développement">
            <desc>Outils adaptés au développement avec le moteur</desc>
            <desc0>Aucun outil adapté disponible</desc0>
            <desc1>Uniquement des outils propriétaires sont disponibles</desc1>
            <desc2>Des outils libres sont disponibles </desc2>
            <score>2</score>
            <comment>Aptana intègre jQuery (http://aptana.com/plugins), une documentation intégrable à Visual Studio est disponible (http://code.google.com/p/jqueryjs/downloads/detail?name=jquery-1.3.2-vsdoc.js), support dans Netbeans IDE (http://wiki.netbeans.org/JavaScriptBundledLibraries)</comment>
         </element>
         <element name="deboguage" title="Déboguage">
            <desc>Outils adaptés au déboguage de l'utilisation du moteur</desc>
            <desc0>Aucun outil adapté disponible</desc0>
            <desc1>Uniquement des outils propriétaires sont disponibles</desc1>
            <desc2>Des outils libres sont disponibles </desc2>
            <score>0</score>
            <comment>Firefox Firebug est utilisable mais pas intégré au moteur.</comment>
         </element>
         <element name="testsunitaires" title="Tests unitaires">
            <desc>Tests unitaires intégrés au moteur</desc>
            <desc0>Pas d'environnement de tests unitaires disponible</desc0>
            <desc1>Quelques fonctionnalités de tests unitaires sont disponibles mais restent limitées ou complexes à utiliser</desc1>
            <desc2>Environnement complet de tests unitaires disponible</desc2>
            <score>2</score>
            <comment>QUnit est un environnement de tests unitaires pour jQuery (http://docs.jquery.com/QUnit)
</comment>
         </element>
      </element>
   </section>
</document>
