# HG changeset patch # User Patrick PIERRE # Date 1371138978 -7200 # Node ID 414224d5a623336398a06a91f07cf6bb0c339cc7 # Parent c9959ed4ba48ee39e6878be598af152ba6b1038a Ajout du moteur blanks-char diff -r c9959ed4ba48 -r 414224d5a623 RelaxNG/Examples/Quiz/blanks-char.xml --- /dev/null jeu. janv. 01 00:00:00 1970 +0000 +++ b/RelaxNG/Examples/Quiz/blanks-char.xml jeu. juin 13 17:56:18 2013 +0200 @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Id$ --> +<publiquiz version="1.0"> + <quiz id="blanks-char" xml:lang="fr"> + <head> + <title>Exercice de positionnement de caractères</title> + </head> + + <instructions> + <p>Retrouvez les phrases cachées et insérez la ponctuation et les + espaces manquants.</p> + </instructions> + + <blanks-char> + <wrongs> + <wrong>? </wrong> + </wrongs> + <p> + <blank function="lowercase">L</blank>e<blank> </blank>petit<blank> </blank>chat<blank> </blank>est<blank> </blank>mort<blank>.</blank> + </p> + <p> + <blank function="lowercase">C</blank><blank>'</blank>est<blank> </blank>dommage<blank> ; </blank>mais<blank> </blank>quoi<blank> !</blank> + </p> + </blanks-char> + </quiz> +</publiquiz> diff -r c9959ed4ba48 -r 414224d5a623 RelaxNG/Examples/Sets/quiz.xml --- a/RelaxNG/Examples/Sets/quiz.xml jeu. juin 13 13:23:26 2013 +0200 +++ b/RelaxNG/Examples/Sets/quiz.xml jeu. juin 13 17:56:18 2013 +0200 @@ -16,6 +16,7 @@ <file>blanks-select.xml</file> <file>blanks-select_multiple.xml</file> <file>blanks-select_dropzone.xml</file> + <file>blanks-char.xml</file> <file>point.xml</file> <file>point_radio.xml</file> <file>matching.xml</file> diff -r c9959ed4ba48 -r 414224d5a623 RelaxNG/publiquiz.rnc --- a/RelaxNG/publiquiz.rnc jeu. juin 13 13:23:26 2013 +0200 +++ b/RelaxNG/publiquiz.rnc jeu. juin 13 17:56:18 2013 +0200 @@ -98,6 +98,7 @@ | choices-check | blanks-fill | blanks-select + | blanks-char | point | matching | sort @@ -128,6 +129,7 @@ blanks-fill.attributes, blanks-fill.content } blanks-select = element blanks-select { blanks-select.attributes, blanks-select.content } +blanks-char = element blanks-char { blanks-select.content } blanks-fill.attributes = strict.attribute? @@ -519,7 +521,11 @@ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ blank ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ~~~~~~ blank -blank = element blank { blank.content } +blank = element blank { blank.attributes, blank.content } + +blank.attributes = + function.attribute? +function.attribute = attribute function { 'lowercase' | 'uppercase' } blank.content = text