# HG changeset patch # User Patrick PIERRE <patrick.pierre@prismallia.fr> # Date 1328363079 -3600 # Node ID 35606ecc54fc08569aa8f279600ded5bf8ca70fc # Parent 2d51a1795ed3942cf1d900d0adcbdf63dbed2b86 Ajout de la configuration XXE pour publiquiz diff -r 2d51a1795ed3 -r 35606ecc54fc RelaxNG/publiquiz.rnc --- a/RelaxNG/publiquiz.rnc mer. févr. 01 18:19:33 2012 +0100 +++ b/RelaxNG/publiquiz.rnc sam. févr. 04 14:44:39 2012 +0100 @@ -56,9 +56,9 @@ quiz.content = component.head?, instructions, - (engine | composite)?, + (engine | composite), help?, - commentary? + answer? # ============================================================================= @@ -84,46 +84,49 @@ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ engine ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ engine = - choices - | blanks + choices-radio + | choices-check + | blanks-fill + | blanks-select | point | matching | sort + | production # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ choices ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -choices = element choices { - (attribute type {"radio"}, choices.attributes, choices.radio.content) - | (attribute type {"check"}, choices.attributes, choices.check.content) -} +choices-radio = element choices-radio { + choices.attributes, choices-radio.content } +choices-check = element choices-check { + choices.attributes, choices-check.content } choices.attributes = shuffle.attribute? shuffle.attribute = attribute shuffle { xsd:boolean } -choices.radio.content = +choices-radio.content = choices.right & choices.wrong+ -choices.check.content = +choices-check.content = (choices.right | choices.wrong)+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ blanks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -blanks = element blanks { - (attribute type {"fill"}, blanks.fill.attributes, blanks.fill.content) - | (attribute type {"select"}, blanks.select.attributes, blanks.select.content) -} +blanks-fill = element blanks-fill { + blanks-fill.attributes, blanks-fill.content } +blanks-select = element blanks-select { + blanks-select.attributes, blanks-select.content } -blanks.fill.attributes = +blanks-fill.attributes = strict.attribute? -blanks.select.attributes = +blanks-select.attributes = multiple.attribute? strict.attribute = attribute strict { xsd:boolean } multiple.attribute = attribute multiple { xsd:boolean } -blanks.fill.content = +blanks-fill.content = (blanks.block+ | blanks.section+) -blanks.select.content = +blanks-select.content = blanks.wrongs?, (blanks.block+ | blanks.section+) @@ -159,6 +162,10 @@ sort.item, sort.item+ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ production ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +production = element production { empty } + # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ composite ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ~~~~~~ composite @@ -183,11 +190,11 @@ (section+ | block+)?, link* -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ commentary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ answer ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -commentary = element commentary { commentary.content } +answer = element answer { answer.content } -commentary.content = +answer.content = (section+ | block+)?, link* @@ -396,7 +403,7 @@ blank.content = text - | (s+, help?, commentary?) + | (s+, help?, answer?) # ~~~~~~ s s = element s { s.content } diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks-fill.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/blanks-fill.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="blanks-fill" xml:lang="fr"> + <head> + <title>Exercice à trous</title> + </head> + + <instructions> + <p>Écrivez correctement les adjectifs de couleur.</p> + </instructions> + + <blanks-fill> + <p> + Ses lèvres sont <blank><s>bleues</s><s>grises</s></blank> + (<mentioned>bleu ou gris</mentioned>) de froid. + </p> + <p> + Les serviettes <blank><s>orange</s> + <help><p>Nom ?</p></help> + <answer><p>Orange est un nom.</p></answer></blank> + (<mentioned>orange</mentioned>) sont propres. + </p> + <p> + Il y a des taches <blank>blanchâtres</blank> + (<mentioned>blanchâtre</mentioned>) sur votre veste. + </p> + </blanks-fill> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks-fill_strict.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/blanks-fill_strict.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="blanks-fill_strict" xml:lang="fr"> + <head> + <title>Exercice à trous strict</title> + </head> + + <instructions> + <p>Écrivez correctement les adjectifs de couleur.</p> + </instructions> + + <blanks-fill strict="true"> + <section> + <p>La Mésopotamie est une région du <blank>Moyen + Orient</blank> située entre le <blank>Tigre</blank> + et l'<blank>Euphrate</blank>. Elle correspond à + l'<blank>Irak</blank> actuel. Il s'agit d'une zone + où l'irrigation n'est pas nécessaire pour l'agriculture.</p> + </section> + <section> + <p>Au <number type="roman" value="3">iii</number><sup>e</sup> + millénaire av. J.-C., on distingue le Nord, appelé + l'<blank>Assyrie</blank> de la région du Sud, la + <blank>Babylonie</blank>.</p> + </section> + </blanks-fill> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks-select.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/blanks-select.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="blanks-select" xml:lang="fr"> + <head> + <title>Exercice à trous avec suggestions</title> + </head> + + <instructions> + <p>Complètez le texte.</p> + </instructions> + + <blanks-select> + <wrongs> + <wrong>la bergère</wrong> + <wrong>« Au feu ! »</wrong> + </wrongs> + <p> + Un berger aime faire croire que le loup attaque <blank>son + troupeau</blank>. À chaque fois qu'il crie « Au loup ! », tous les gens + du village viennent en courant. Cela amuse beaucoup <blank>le + berger</blank>. + </p> + <p> + <blank>Un jour</blank>, le loup attaque son troupeau. Le berger crie + <blank>« Au loup ! »</blank> mais personne ne vient et le loup emporte + sa plus belle brebis. + </p> + </blanks-select> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks-select_multiple.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/blanks-select_multiple.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="blanks-select_multiple" xml:lang="fr"> + <head> + <title>Exercice à trous avec suggestions réutilisables</title> + </head> + + <instructions> + <p>Sans utiliser votre calculatrice, ni poser les opérations, retrouvez + le résultat exact de chaque multiplication.</p> + </instructions> + + <blanks-select multiple="true"> + <wrongs> + <wrong>1 169,73</wrong> + <wrong>848,78</wrong> + </wrongs> + <list> + <item>369 x 31,7 = <blank>11 697,3</blank></item> + <item>738 x 1,15 = <blank>848,7</blank></item> + <item>317 x 36,9 = <blank>11 697,3</blank></item> + </list> + </blanks-select> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks_fill.xml --- a/Xml/Quiz/blanks_fill.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="blanks_fill" xml:lang="fr"> - <head> - <title>Exercice à trous</title> - </head> - - <instructions> - <p>Écrivez correctement les adjectifs de couleur.</p> - </instructions> - - <blanks type="fill"> - <p> - Ses lèvres sont <blank><s>bleues</s><s>grises</s></blank> - (<mentioned>bleu ou gris</mentioned>) de froid. - </p> - <p> - Les serviettes <blank><s>orange</s> - <help><p>Nom ?</p></help> - <commentary><p>Orange est un nom.</p></commentary></blank> - (<mentioned>orange</mentioned>) sont propres. - </p> - <p> - Il y a des taches <blank>blanchâtres</blank> - (<mentioned>blanchâtre</mentioned>) sur votre veste. - </p> - </blanks> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks_fill_strict.xml --- a/Xml/Quiz/blanks_fill_strict.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="blanks_fill_strict" xml:lang="fr"> - <head> - <title>Exercice à trous strict</title> - </head> - - <instructions> - <p>Écrivez correctement les adjectifs de couleur.</p> - </instructions> - - <blanks type="fill" strict="true"> - <section> - <p>La Mésopotamie est une région du <blank>Moyen - Orient</blank> située entre le <blank>Tigre</blank> - et l'<blank>Euphrate</blank>. Elle correspond à - l'<blank>Irak</blank> actuel. Il s'agit d'une zone - où l'irrigation n'est pas nécessaire pour l'agriculture.</p> - </section> - <section> - <p>Au <number type="roman" value="3">iii</number><sup>e</sup> - millénaire av. J.-C., on distingue le Nord, appelé - l'<blank>Assyrie</blank> de la région du Sud, la - <blank>Babylonie</blank>.</p> - </section> - </blanks> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks_select.xml --- a/Xml/Quiz/blanks_select.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="blanks_select" xml:lang="fr"> - <head> - <title>Exercice à trous avec suggestions</title> - </head> - - <instructions> - <p>Complètez le texte.</p> - </instructions> - - <blanks type="select"> - <wrongs> - <wrong>la bergère</wrong> - <wrong>« Au feu ! »</wrong> - </wrongs> - <p> - Un berger aime faire croire que le loup attaque <blank>son - troupeau</blank>. À chaque fois qu'il crie « Au loup ! », tous les gens - du village viennent en courant. Cela amuse beaucoup <blank>le - berger</blank>. - </p> - <p> - <blank>Un jour</blank>, le loup attaque son troupeau. Le berger crie - <blank>« Au loup ! »</blank> mais personne ne vient et le loup emporte - sa plus belle brebis. - </p> - </blanks> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/blanks_select_multiple.xml --- a/Xml/Quiz/blanks_select_multiple.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="blanks_select_multiple" xml:lang="fr"> - <head> - <title>Exercice à trous avec suggestions réutilisables</title> - </head> - - <instructions> - <p>Sans utiliser votre calculatrice, ni poser les opérations, retrouvez - le résultat exact de chaque multiplication.</p> - </instructions> - - <blanks type="select" multiple="true"> - <wrongs> - <wrong>1 169,73</wrong> - <wrong>848,78</wrong> - </wrongs> - <list> - <item>369 x 31,7 = <blank>11 697,3</blank></item> - <item>738 x 1,15 = <blank>848,7</blank></item> - <item>317 x 36,9 = <blank>11 697,3</blank></item> - </list> - </blanks> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/choices-check.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/choices-check.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="choices-check" xml:lang="fr"> + <head> + <title>Exercice QCM cases à cocher</title> + </head> + + <instructions> + <p>Mon chiffre des unités est le double de celui des dizaines, mon + chiffre des dixièmes est inférieur à celui des unités. Mon chiffre des + centièmes est supérieur à 7. Qui suis-je ? (deux solutions)</p> + </instructions> + + <choices-check> + <wrong>724,36</wrong> + <right>324,18</right> + <right>812,19</right> + <wrong>963,49</wrong> + </choices-check> + + <answer> + <p>Il faut procéder par élimination.</p> + <list> + <item> + Les quatre nombres vérifient la première condition (« mon chiffre des + unités est le double de celui des dizaines ») : + 7<highlight>24</highlight>,36 ; 3<highlight>24</highlight>,18 ; + 8<highlight>12</highlight>,19 et 9<highlight>63</highlight>,49. + </item> + <item> + Mais la deuxième condition (« mon chiffre des dixièmes est inférieur + à celui des unités ») t'amène à écarter le nombre + 96<highlight>3</highlight>,<highlight>4</highlight>9 et la dernière + condition (« mon chiffre des centièmes est supérieur à 7 »), le + nombre 724,3<highlight>6</highlight>. + </item> + </list> + </answer> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/choices-radio.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/choices-radio.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="choices_radio" xml:lang="fr"> + <head> + <title>Exercice QCM radio</title> + </head> + + <instructions> + <p>Quand on commande une « surprise » à Otorino le pizzaïolo, il choisit + au hasard trois des ingrédients :</p> + <list> + <item>olives ou anchois ;</item> + <item>poivrons ou artichaut ou champignons ;</item> + <item>jambon ou coppa.</item> + </list> + <p>Quelle est la probabilité d'obtenir une pizza contenant des anchois + et des poivrons ?</p> + </instructions> + + <choices-radio> + <wrong>½</wrong> + <right>⅙</right> + <wrong>⅓</wrong> + </choices-radio> + + <help> + <p>Pour trouver le nombre de cas possibles, le plus simple est de faire + un arbre.</p> + </help> + + <answer> + <p>Pour trouver le nombre de cas possibles, le plus simple est de faire + un arbre.</p> + <p>Le nombre de cas favorables est 2.</p> + <p>On en déduit la probabilité cherchée : 2/12 = 1/6</p> + <link uri="proba01"/> + </answer> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/choices_check.xml --- a/Xml/Quiz/choices_check.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="choices_check" xml:lang="fr"> - <head> - <title>Exercice QCM cases à cocher</title> - </head> - - <instructions> - <p>Mon chiffre des unités est le double de celui des dizaines, mon - chiffre des dixièmes est inférieur à celui des unités. Mon chiffre des - centièmes est supérieur à 7. Qui suis-je ? (deux solutions)</p> - </instructions> - - <choices type="check"> - <wrong>724,36</wrong> - <right>324,18</right> - <right>812,19</right> - <wrong>963,49</wrong> - </choices> - - <commentary> - <p>Il faut procéder par élimination.</p> - <list> - <item> - Les quatre nombres vérifient la première condition (« mon chiffre des - unités est le double de celui des dizaines ») : - 7<highlight>24</highlight>,36 ; 3<highlight>24</highlight>,18 ; - 8<highlight>12</highlight>,19 et 9<highlight>63</highlight>,49. - </item> - <item> - Mais la deuxième condition (« mon chiffre des dixièmes est inférieur - à celui des unités ») t'amène à écarter le nombre - 96<highlight>3</highlight>,<highlight>4</highlight>9 et la dernière - condition (« mon chiffre des centièmes est supérieur à 7 »), le - nombre 724,3<highlight>6</highlight>. - </item> - </list> - </commentary> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/choices_radio.xml --- a/Xml/Quiz/choices_radio.xml mer. févr. 01 18:19:33 2012 +0100 +++ /dev/null jeu. janv. 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- $Id$ --> -<publiquiz version="1.0"> - <quiz xml:id="choices_radio" xml:lang="fr"> - <head> - <title>Exercice QCM radio</title> - </head> - - <instructions> - <p>Quand on commande une « surprise » à Otorino le pizzaïolo, il choisit - au hasard trois des ingrédients :</p> - <list> - <item>olives ou anchois ;</item> - <item>poivrons ou artichaut ou champignons ;</item> - <item>jambon ou coppa.</item> - </list> - <p>Quelle est la probabilité d'obtenir une pizza contenant des anchois - et des poivrons ?</p> - </instructions> - - <choices type="radio"> - <wrong>½</wrong> - <right>⅙</right> - <wrong>⅓</wrong> - </choices> - - <help> - <p>Pour trouver le nombre de cas possibles, le plus simple est de faire - un arbre.</p> - </help> - - <commentary> - <p>Pour trouver le nombre de cas possibles, le plus simple est de faire - un arbre.</p> - <p>Le nombre de cas favorables est 2.</p> - <p>On en déduit la probabilité cherchée : 2/12 = 1/6</p> - <link uri="proba01"/> - </commentary> - </quiz> -</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/composite.xml --- a/Xml/Quiz/composite.xml mer. févr. 01 18:19:33 2012 +0100 +++ b/Xml/Quiz/composite.xml sam. févr. 04 14:44:39 2012 +0100 @@ -16,11 +16,11 @@ <instructions> <p>abeille</p> </instructions> - <choices type="radio"> + <choices-radio> <wrong>gastéropode</wrong> <right>insecte</right> <wrong>mollusque</wrong> - </choices> + </choices-radio> </subquiz> <!-- ================================================================ --> @@ -28,21 +28,21 @@ <instructions> <p>aigle</p> </instructions> - <choices type="check"> + <choices-check> <right>oiseau</right> <wrong>passereau</wrong> <wrong>charognard</wrong> <right>rapace</right> - </choices> + </choices-check> </subquiz> <!-- ================================================================ --> <subquiz> - <blanks type="fill"> + <blanks-fill> <p>L'abeille est un <blank>insecte</blank> qui vit dans une <blank>ruche</blank>.</p> <p>Elle fabrique du <blank>miel</blank>.</p> - </blanks> + </blanks-fill> </subquiz> <!-- ================================================================ --> @@ -50,13 +50,13 @@ <instructions> <p>albatros</p> </instructions> - <blanks type="select"> + <blanks-select> <wrongs> <wrong>reptile</wrong> <wrong>oiseaux</wrong> </wrongs> <p>Catégorie : <blank>mammifère</blank></p> - </blanks> + </blanks-select> </subquiz> <!-- ================================================================ --> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/matching.xml --- a/Xml/Quiz/matching.xml mer. févr. 01 18:19:33 2012 +0100 +++ b/Xml/Quiz/matching.xml sam. févr. 04 14:44:39 2012 +0100 @@ -20,7 +20,7 @@ <p>On a gardé contact.</p> </match> <match> - <p>On se chipote souvent.</p> + <p>On se chamaille souvent.</p> <p>On ne se dispute jamais.</p> </match> <match> diff -r 2d51a1795ed3 -r 35606ecc54fc Xml/Quiz/production.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xml/Quiz/production.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="production" xml:lang="fr"> + <head> + <title>Exercice de production</title> + </head> + + <instructions> + <p> + Notre connaissance du réel se limite-t-elle au savoir scientifique ? + </p> + </instructions> + + <production/> + + <answer> + <p>« Le grand livre de la nature est écrit en langage mathématique » + avait coutume de dire <name>Galilée</name>. Cela signifie-t-il pour + autant que notre connaissance du réel se limite au savoir + scientifique ? Si nous acceptons cette restriction, nous acceptons + aussi que seuls les scientifiques aient accès à la connaissance du + réel. Est-ce le cas ? N'avons-nous pas, en tant qu'être humain, hors de + toute science, accès à une certaine connaissance du monde qui nous + entoure, une connaissance qui pourrait ne pas être forcément un + savoir ?</p> + <p>Ce premier enjeu du sujet est redoublé par un autre, plus + essentiel, celui de la définition du réel. À quelle sorte de réel le + savoir scientifique nous donne-t-il accès ? Est-ce là le seul réel + dont nous pouvons avoir connaissance ?</p> + </answer> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Css/publiquiz.css --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Css/publiquiz.css sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,464 @@ +@charset "UTF-8"; + +/* $Id$ */ + +@import url(publidoc.css); + + +publiquiz { + display: block; + font-family: sans-serif; + padding: 0; +} + + +/* Component level ========================================================= */ + +quiz:before { + display: block; + color: #7f7f7f; + background-color: #ddddcc; + border: 1px solid #aeaea0; + font-weight: bold; + padding: .5em 5px .5em 5px; + content: collapser() " " insert-before-button() insert-after-button() + " " add-attribute-button() " Quiz"; +} + +quiz[xml|id]:before { + content: collapser() " " insert-before-button() insert-after-button() " Quiz" + " – ID = " text-field(attribute, "xml:id", columns, 15, color, black); +} + +quiz { + display: block; + border: 1px solid #aeaea0; + margin-bottom: .5em; + padding: 5px; + collapsible: yes; +} +quiz:last-child { + margin-bottom: 0; +} + +quiz > head { + background-color: #ffffee; + padding: .3em .5em .3em .5em; + border-radius: 0.5em; +} + + +/* Top level =============================================================== */ + +publiquiz > *:before { + display: block; + color: #bbbbbb; + background: #993333 url('top.png') repeat-x top left; + font-weight: bold; + padding: 1.2em 5px 1em 5px; +} +publiquiz > document:before { + content: add-attribute-button() " Document" + " – ID = " text-field(attribute, "xml:id", columns, 15, color, white); +} +publiquiz > document[xml|id][xml|lang]:before { + content: "Document" + " – ID = " text-field(attribute, "xml:id", columns, 15, color, white) + " – Langue principale = " combo-box(attribute, "xml:lang", font-size, 75%, + values, "en\A fr\A fr-FR\A es", color, white); +} +publiquiz > quiz[xml|id]:before { + content: add-attribute-button() " Quiz" + " – ID = " text-field(attribute, "xml:id", columns, 15, color, white); +} +publiquiz > quiz[xml|id][xml|lang]:before { + content: "Quiz" + " – ID = " text-field(attribute, "xml:id", columns, 15, color, white) + " – Langue principale = " combo-box(attribute, "xml:lang", font-size, 75%, + values, "en\A fr\A fr-FR\A es", color, white); +} + +publiquiz > * { + display: block; + margin: 5px; + padding: 0; + border: 0; +} + +publiquiz > * > head { + background-color: #ffffee; + padding: .3em .5em .3em .5em; + border-radius: 0.5em; +} + +publiquiz > * > head > title { + font-size: 140%; +} + + +/* Section level =========================================================== */ + +quiz > *:before, quiz > composite > *:before { + display: block; + color: #7f7f7f; + text-align: left; + font-style: normal; + font-size: 75%; + padding-bottom: 3px; +} + +quiz > *, quiz > composite > * { + display: block; +} + +quiz > *:after, quiz > composite > *:after { + color: #7f7f7f; + content: insert-after-button(); +} + +quiz > head:after { + display: none; +} + +/* instructions ~~~~~~~~~~~~~~~~~~~~~ */ + +instructions:before { + background-color: #e8f0f7; + content: insert-before-button() " Consigne"; +} + +instructions { + display: block; + background-color: #e8f0f7; +} + +instructions section:before, instructions section, instructions section:after { + margin-left: 1em; +} + +/* choices ~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +choices-radio:before { + content: insert-before-button() + command-button(command, "putAttribute", parameter, "shuffle true", icon, icon(plus-box)) + " QCM – radio"; +} +choices-radio[shuffle]:before { + content: insert-before-button() + " QCM – radio" + " – shuffle = " label(attribute, shuffle, color, black) + set-attribute-button(attribute, shuffle, unset-attribute, yes); +} + +choices-check:before { + content: insert-before-button() + command-button(command, "putAttribute", parameter, "shuffle true", icon, icon(plus-box)) + " QCM – check"; +} +choices-check[shuffle]:before { + content: insert-before-button() + " QCM – check" + " – shuffle = " label(attribute, shuffle, color, black) + set-attribute-button(attribute, shuffle, unset-attribute, yes); +} + +/* blanks ~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +blanks-fill:before { + content: insert-before-button() + command-button(command, "putAttribute", parameter, "strict true", icon, icon(plus-box)) + " Exercice à trous – saisie libre"; +} +blanks-fill[strict]:before { + content: insert-before-button() + " Exercice à trous – saisie libre" + " – strict = " label(attribute, strict, color, black) + set-attribute-button(attribute, strict, unset-attribute, yes); +} + +blanks-select:before { + content: insert-before-button() + command-button(command, "putAttribute", parameter, "multiple true", icon, icon(plus-box)) + " Exercice à trous – liste fermée"; +} +blanks-select[multiple]:before { + content: insert-before-button() + " Exercice à trous – liste fermée" + " – multiple = " label(attribute, multiple, color, black) + set-attribute-button(attribute, multiple, unset-attribute, yes); +} + +/* point ~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +point:before { + content: insert-before-button() " " + command-button(command, "putAttribute", parameter, "type radio", icon, icon(plus-box)) + " Pointage"; +} +point[type]:before { + content: insert-before-button() + " Pointage – type = " label(attribute, type, color, black) + set-attribute-button(attribute, type, unset-attribute, yes); +} + +/* matching ~~~~~~~~~~~~~~~~~~~~~~~~ */ + +matching:before { + content: insert-before-button() " Appariement"; +} + +/* sort ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +sort:before { + content: insert-before-button() + command-button(command, "putAttribute", parameter, "shuffle true", icon, icon(plus-box)) + " Tri"; +} +sort[shuffle]:before { + content: insert-before-button() + " Tri – shuffle = " label(attribute, shuffle, color, black) + set-attribute-button(attribute, shuffle, unset-attribute, yes); +} + +/* production ~~~~~~~~~~~~~~~~~~~~~~ */ + +production:before { + content: insert-before-button() " Production"; +} + +/* composite ~~~~~~~~~~~~~~~~~~~~~~~ */ + +composite:before { + content: insert-before-button() " Composite"; +} + +subquiz { + display: block; + border-style: none; + margin: 0 0 .6em 1em; + padding: 0; +} + +subquiz > *, subquiz > *:before { + display: block; +} + +subquiz > head { + background-color: #ffffee; + padding: .3em .5em .3em .5em; + border-radius: 0.5em; +} + +subquiz > instructions:before { + content: "Consigne"; +} + +/* help ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +help:before { + margin-top: .5em; + background-color: #ffffdd; + content: insert-before-button() insert-button() " Aide 2"; +} + +help, help > *:before, help > * { + background-color: #ffffdd; +} + +/* answer ~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +answer:before { + margin-top: .5em; + background-color: #eaffe9; + content: insert-before-button() insert-button() " Réponse"; +} + +answer, answer > *:before, answer > * { + background-color: #eaffe9; +} + +answer:after { + display: none; +} + + +/* Block level ============================================================= */ + +/* choices.right, choices.wrong ~~~~ */ + +choices-radio right:before, choices-radio wrong:before, +choices-check right:before, choices-check wrong:before { + display: marker; + content: insert-before-button(color, #7f7f7f, icon, icon(left-half-disc)) + insert-after-button(color, #7f7f7f, icon, icon(right-half-disc)); +} + +choices-radio right, choices-radio wrong, +choices-check right, choices-check wrong { + display: block; + margin-left: 24px; + font-size: 115%; + font-family: serif; +} + +choices-radio > right:before { + color: #7f7f7f; + content: insert-before-button(icon, icon(left-half-disc)) + insert-after-button(icon, icon(right-half-disc)) + " " icon(radio-on) " "; + +} +choices-radio > wrong:before { + color: #7f7f7f; + content: insert-before-button( icon, icon(left-half-disc)) + insert-after-button(icon, icon(right-half-disc)) + " " icon(radio-off) " "; + +} +choices-check > right:before { + color: #7f7f7f; + content: insert-before-button(icon, icon(left-half-disc)) + insert-after-button(icon, icon(right-half-disc)) + command-button(command, "convert", parameter, "wrong", icon, icon(convert)) + " " icon(check-on) " "; +} +choices-check > wrong:before { + color: #7f7f7f; + content: insert-before-button(icon, icon(left-half-disc)) + insert-after-button(icon, icon(right-half-disc)) + command-button(command, "convert", parameter, "right", icon, icon(convert)) + " " icon(check-off) " "; +} + +choices-radio > right, choices-radio > wrong { + margin-left: 52px; +} +choices-check > right, choices-check > wrong { + margin-left: 56px; +} + +/* blanks.wrongs ~~~~~~~~~~~~~~~~~~~ */ + +blanks-select > wrongs:before { + color: #7f7f7f; + content: "Intrus : "; +} + +blanks-select > wrongs { + display: block; + margin: .5em 0 .5em 0; +} + +wrongs > wrong { + display: inline; + background-color: #c7e0f8; +} + +wrongs > wrong:after { + color: #7f7f7f; + content: " – "; + background-color: transparent; +} +wrongs > wrong:after:last-child { + content: insert-same-after-button(color, #7f7f7f, icon, icon(right-half-disc)); +} + +/* match ~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +match:before { + display: marker; + color: #7f7f7f; + content: insert-same-before-button(icon, icon(left-half-disc)) + insert-same-after-button(icon, icon(right-half-disc)); +} + +match { + display: block; + margin-left: 24px; +} + +match > section:before, match > p:before { + display: none; +} + +match section, match p { + display: inline; +} + +match > section:first-child:after, match > p:first-child:after { + color: #7f7f7f; + content: " —> "; +} +match > section:last-child:after, match > p:last-child:after { + display: none; +} + +/* sort > comparison ~~~~~~~~~~~~~~~ */ + +comparison:before { + color: #7f7f7f; + content: "Logique de comparaison : " +} + +comparison { + display: block; + margin: .2em 0 .5em 0; +} + +/* sort > item ~~~~~~~~~~~~~~~~~~~~~ */ + +sort > item:before { + color: #7f7f7f; + content: insert-before-button(icon, icon(left-half-disc)) + text-field(attribute, "shuffle", columns, 1, font-size, 75%, color, black) + " "; +} + +sort > item { + display: inline; +} + +sort > item:after { + color: #7f7f7f; + content: insert-same-after-button(icon, icon(right-half-disc)) + " " xpath("../comparison") " "; +} +sort > item:last-child:after { + content: insert-same-after-button(icon, icon(right-half-disc)) "\A"; +} + + +/* Inline level ============================================================ */ + +/* blank ~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +blank { + background-color: #c0ffc0; +} + +s:after { + color: #7f7f7f; + background-color: transparent; + content: insert-same-after-button(icon, icon(right-half-disc)); +} + +/* point.right & point.wrong ~~~~~~~ */ + +point right:before, point wrong:before { + background: transparent; + color: #7f7f7f; +} +point right:before { + content: command-button(command, "convert", parameter, "wrong", icon, icon(convert)); +} +point wrong:before { + content: command-button(command, "convert", parameter, "right", icon, icon(convert)); +} + +point right { + background-color: #c0ffc0; +} + +point wrong { + background-color: #c7e0f8; +} \ No newline at end of file diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_blanks-fill.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_blanks-fill.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <blanks-fill> + <p></p> + </blanks-fill> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_blanks-select.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_blanks-select.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <blanks-select> + <p></p> + </blanks-select> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_choices-check.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_choices-check.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <choices-check> + <right></right> + <wrong></wrong> + </choices-check> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_choices-radio.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_choices-radio.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <choices-radio> + <right></right> + <wrong></wrong> + </choices-radio> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_composite.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_composite.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <composite> + <subquiz> + <instructions> + <p></p> + </instructions> + <choices-radio> + <right></right> + <wrong></wrong> + </choices-radio> + </subquiz> + + <subquiz> + <instructions> + <p></p> + </instructions> + <choices-radio> + <right></right> + <wrong></wrong> + </choices-radio> + </subquiz> + </composite> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_matching.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_matching.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <matching> + <match> + <p></p> + <p></p> + </match> + <match> + <p></p> + <p></p> + </match> + </matching> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_point.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_point.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8"?> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <point> + <p></p> + </point> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_production.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_production.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <production/> + + <answer> + <p></p> + </answer> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/Templates/publiquiz_sort.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/Templates/publiquiz_sort.xml sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz xml:id="???"> + <head> + <title></title> + </head> + + <instructions> + <p></p> + </instructions> + + <sort> + <comparison></comparison> + <item></item> + <item></item> + </sort> + </quiz> +</publiquiz> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/publidoc.xxe --- a/Xxe/publidoc.xxe mer. févr. 01 18:19:33 2012 +0100 +++ b/Xxe/publidoc.xxe sam. févr. 04 14:44:39 2012 +0100 @@ -5,7 +5,7 @@ xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration"> <detect> - <rootElementLocalName>publidoc</rootElementLocalName>x + <rootElementLocalName>publidoc</rootElementLocalName> </detect> <relaxng compactSyntax="true" encoding="UTF-8" diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/publiquiz.xxe --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/publiquiz.xxe sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<configuration name="Publiquiz" + xmlns="http://www.xmlmind.com/xmleditor/schema/configuration" + xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration"> + + <detect> + <rootElementLocalName>publiquiz</rootElementLocalName> + </detect> + + <relaxng compactSyntax="true" encoding="UTF-8" + location="../RelaxNG/publiquiz.rnc"/> + + <css location="Css/publiquiz.css" name="Publiquiz"/> + + <!-- ================================================================== --> + <template location="Templates/publiquiz_choices-radio.xml" + name="Exercice QCM – radio"/> + <template location="Templates/publiquiz_choices-check.xml" + name="Exercice QCM – check"/> + <template location="Templates/publiquiz_blanks-fill.xml" + name="Exercice à trous – saisie libre"/> + <template location="Templates/publiquiz_blanks-select.xml" + name="Exercice à trous – liste fermée"/> + <template location="Templates/publiquiz_point.xml" + name="Exercice de pointage"/> + <template location="Templates/publiquiz_matching.xml" + name="Exercice d'appariement"/> + <template location="Templates/publiquiz_sort.xml" + name="Exercice de tri"/> + <template location="Templates/publiquiz_production.xml" + name="Exercice de production"/> + <template location="Templates/publiquiz_composite.xml" + name="Exercices composites"/> + + <!-- ================================================================== --> + <menu label="_Publiquiz"> + <menu label="Tableaux"> + <item label="Ligne – Insérer avant" + icon="xxe-config:common/icons/insertRowBefore.png" + command="tableEdit" parameter="insertRowBefore"/> + <item label="Ligne – Insérer après" + icon="xxe-config:common/icons/insertRowAfter.png" + command="tableEdit" parameter="insertRowAfter"/> + <item label="Ligne – Supprimer" + icon="xxe-config:common/icons/deleteRow.png" + command="tableEdit" parameter="deleteRow"/> + <separator /> + <item label="Colonne – Insérer avant" + icon="xxe-config:common/icons/insertColumnBefore.png" + command="tableEdit" parameter="insertColumnBefore"/> + <item label="Colonne – Insérer après" + icon="xxe-config:common/icons/insertColumnAfter.png" + command="tableEdit" parameter="insertColumnAfter"/> + <item label="Colonne – Supprimer" + icon="xxe-config:common/icons/deleteColumn.png" + command="tableEdit" parameter="deleteColumn"/> + </menu> + </menu> + + <command name="tableEdit"> + <class>com.xmlmind.xmleditext.docbook.table.CALSTableEdit</class> + </command> + + <validateHook name="cols_checker"> + <class>com.xmlmind.xmleditext.docbook.table.ValidateHookImpl</class> + </validateHook> +</configuration> diff -r 2d51a1795ed3 -r 35606ecc54fc Xxe/publiquiz.xxe_addon --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/Xxe/publiquiz.xxe_addon sam. févr. 04 14:44:39 2012 +0100 @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<a:addon xmlns="http://www.w3.org/1999/xhtml" + xmlns:html="http://www.w3.org/1999/xhtml" + xmlns:a="http://www.xmlmind.com/xmleditor/schema/addon"> + <a:category> + <a:configuration /> + </a:category> + + <a:name>Publiquiz configuration</a:name> + + <a:version>1.0</a:version> + + <a:author><a href="http://www.prismallia.fr">Prismallia</a></a:author> + + <a:xxeVersion>5.1.0+</a:xxeVersion> + +</a:addon>