Copyright ©2005 W3C® (MIT, ERCIM, Keio), tous droits réservés. Les règles de responsabilité, de nom de marque, d'utilisation des documents et d'octroi de licences logicielles du W3C s'appliquent.
La recommandation XForms 1.0 a été produite par le groupe de travail XForms du W3C sous l'égide de l'activité domaine des interactions du W3C.
Ce document répertorie les erreurs connues dans la recommandation XForms 1.0. Ces erreurs sont rangées par section et chaque entrée comporte les renseignements suivants :
Veuillez envoyer les remarques au sujet de ce document à la liste de diffusion publique www-forms-editor@w3.org. Les archives de cette liste sont disponibles en ligne.
xforms-refresh
section 4.3.4)xforms-revalidate
section 4.3.5)xforms-recalculate
section 4.3.6)xforms-select
et xforms-deselect
(section 4.4.3)xforms-submit-error
est envoyé à xforms:submission
(section 4.4.19)input
(section 7.4)group
et switch
(section 9.1.1)group
et switch
(section 9.2.1)case
: changer les états plutôt que les attributs (section 9.2.2)toggle
: changer les états plutôt que les attributs (section 9.2.3)group
et switch
(section 9.3.1)input
(section 9.3.1)group
et switch
(section 9.3.2)insert
: utiliser le premier nœud de l'ensemble de nœuds (section 9.3.5)nodeset
(section 9.3.5 et section 9.3.6)setindex
(section 9.3.7)startindex
utilisé pour les répétitions internes (section 9.3.7)nodeset
(section 9.3.8)startindex
utilisé pour les répétitions internes (section 9.3.8)startindex
utilisé pour les répétitions internes (section 9.3.9)model
optionnel pour les actions reset, rebuild, recalculate, revalidate et refresh (sections 10.1.11 et 10.1.3 à 10.1.6)xforms-focus
(section 10.1.7)setvalue
(section 10.1.9)xforms-submit
(section 11.1)Content-Type
PEUT, et non DOIT, être inclus (section 11.5)application/x-www-form-urlencoded
(section 11.6)model
optionnel pour les actions reset
, rebuild
, recalculate
, revalidate
et refresh
(dans le schéma XForms cité en référence normative dans l'Annexe A)case
d'un élément switch
peut être vide (dans le schéma XForms cité en référence normative dans l'Annexe A)instance
à la liste d'attributs de submission
.L'usage prévu du remplacement d'instance n'est pas pratiquable car les résultats remplacent toujours les données de soumission. Par exemple, les requêtes à suivre ne sont pas réalisables.
Dans le tableau des attributs et dans les modèles de contenu minimaux des éléments du module Noyau
de XForms, ajouter
", instance (xsd:IDREF)" (après la définition de l'attribut replace
).
Voir également :
1.5 E69b : Remplacement d'instance (section 3.3.3)
2.10 E69c : Remplacement d'instance (section 4.5.1)
8.4 E69d : Remplacement d'instance (section 11.1)
Remarque :
Toutes les données significatives pour le modèle de données XPath doivent être préservées au cours du traitement et de la soumission, y compris les instructions de traitement, les nœuds de commentaire et tous les caractères blancs.
Si la création de la copie détachée des données d'instance en ligne échouait à cause d'une erreur XML, alors le traitement
devrait s'interrompre avec une exception xforms-link-exception
. Cela peut se produire, par exemple, si le contenu en ligne se compose
de deux nœuds d'élément, ce qui aurait impliqué la création d'un document XML avec deux éléments document.
Remarque :
Dans XForms 1.1, un nouvel événement d'exception sera généré.
Une adresse URI obligatoire à laquelle soumettre les données d'instance.
Le comportement des adresses URI relatives dans les liens est déterminé par le langage hôte, même si un traitement [XML Base] est fortement recommandé.
Attribut optionnel indiquant l'instance à remplacer lorsque l'attribut replace
vaut "instance". Si l'attribut est absent,
alors l'instance implicite est celle qui contient les données de soumission. Il se produit une exception
xforms-binding-exception si cet attribut n'indique pas une instance du même modèle
que celui de la soumission.
Voir également :
1.1 E69a : Remplacement d'instance (section 3.3)
2.10 E69c : Remplacement d'instance (section 4.5.1)
8.4 E69d : Remplacement d'instance (section 11.1)
Cette section définit les divers états de la phase d'initialisation. Le processeur lance l'initialisation
en distribuant un événement xforms-model-construct
à chaque modèle XForms dans le document conteneur.
Cette section définit les divers états de la phase d'initialisation. Le processeur lance l'initialisation
en distribuant un événement xforms-model-construct
à chaque modèle XForms dans le document conteneur.
L'initialisation proprement dite du processeur XForms dépend de la mise en œuvre.
Distribué par le processeur du document conteneur afin d'amorcer l'initialisation du processeur XForms.
Distribué à chaque modèle XForms par le processeur XForms.
L'action implicite de cet événement produit le placement du focus sur la commande de formulaire cible, si cette commande est capable de recevoir le focus.
L'action implicite de cet événement produit le placement du focus sur la commande de formulaire cible, si cette commande est capable de recevoir le focus. Le placement du focus sur une structure de répétition fixera le focus sur l'élément de répétition repéré par l'index de répétition.
Voir également :
xforms-refresh
section 4.3.4)L'action implicite de cet événement est la suivante : l'interface d'utilisateur reflète l'état du modèle, ce qui veut dire que toutes les commandes de formulaire reflètent les données d'instance correspondantes auxquelles elles sont liées :
sa valeur courante ;
sa validité ;
si elle est obligatoire (required
), en lecture seule (readonly
) ou pertinente (relevant
).
L'action implicite de cet événement est la suivante :
Toutes les liaisons de l'interface d'utilisateur devraient être réévaluées si nécessaire ;
Un nœud peut changer du fait d'une entrée d'utilisateur confirmée dans une commande de formulaire par un
événement xforms-recalculate
(section 4.3.6) ou par une
action (section 10.1.9). Si la valeur d'un nœud de données d'instance a changé,
alors le nœud doit être marqué afin de distribuer un événement xforms-value-changed
;
Si l'événement xforms-value-changed
est marqué pour une distribution, alors tous les événements de notification appropriés de
propriétés d'élément du modèle doivent l'être également (c'est-à-dire, xforms-optional
ou xforms-required
,
xforms-readwrite
ou xforms-readonly
, et xforms-enabled
ou xforms-disabled
) ;
Pour chaque commande de formulaire, chaque événement de notification marqué pour distribution sur le nœud lié doivent être
distribués (xforms-value-changed
, xforms-valid
, xforms-invalid
, xforms-optional
, xforms-required
, xforms-readwrite
,
xforms-readonly
et xforms-enabled
, xforms-disabled
). Les événements de notification xforms-out-of-range
ou xforms-in-range
doivent aussi être distribués selon le cas. Cette spécification ne définit aucun ordre pour les événements ;
l'interface d'utilisateur reflète l'état du modèle, ce qui veut dire que toutes les commandes de formulaire reflètent les données d'instance correspondantes auxquelles elles sont liées :
sa valeur courante ;
sa validité ;
si elle est obligatoire (required
), en lecture seule (readonly
) ou pertinente (relevant
).
Voir également :
2.4 E70b : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateurs (
xforms-revalidate
section 4.3.5)
2.5 E70c : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-recalculate
section 4.3.6)
2.7 E70d : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.4)
2.11 E70e : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.6.7)
xforms-revalidate
section 4.3.5)L'action implicite de cet événement est la suivante :
La gestion minimale de cet événement doit satisfaire aux conditions suivantes :
Tous les nœuds de donnée d'instance dans tous les éléments instance
de l'élément model
sont vérifiés
par rapport à un schéma XML indiqué ;
Tous les nœuds de donnée d'instance dans tous les éléments instance
de l'élément model
sont vérifiés
par rapport aux éventuelles propriétés d'élément de modèle liées définissant des contraintes de valeur, c'est-à-dire required
,
constraint
(cf. 6 Les propriétés d'élément de modèle) ;
Les événements de notification appropriés (cf. 4.4.6 L'événement xforms-vali
d, 4.4.7 L'événement xforms-invali
d,
4.4.10 L'événement xforms-readonl
y, 4.4.11 L'événement xforms-readwrit
e, 4.4.12 L'événement xforms-require
d,
4.4.13 L'événement xforms-optiona
l, 4.4.14 L'événement xforms-enable
d, 4.4.15 L'événement xforms-disable
d)
sont distribués aux commandes de formulaire dont la propriété d'élément de modèle correspondante est évaluée à une valeur différente
de celle au début du traitement de l'événement en question.
Remarque :
Avant la distribution du gestionnaire d'événement xforms-ready
, aucune commande de formulaire n'est liée à des
données d'instance, de sorte que l'événement xforms-valid
et les autres événements de notification ne sont pas distribués.
Un nœud d'instance est valide si, et seulement si, les conditions suivantes sont vérifiées :
La propriété d'élément de modèle constraint
vaut "true
" ;
Le nœud satisfait aux définitions de schéma XML applicables (y compris celles associées par la
propriété d'élément de modèle type
) ;
Remarque :
Un nœud satisfaisant aux conditions précédentes est valide même s'il est obligatoire et qu'il est vide.
L'action implicite de cet événement est la suivante :
La validité de tous les nœuds de donnée d'instance dans tous les éléments instance
de l'élément model
est vérifiée conformément à la définition précédente. Si la validité d'un nœud change, alors ce nœud est marqué pour
distribution de l'événement de notification approprié (xforms-valid
ou xforms-invalid
) aux
commandes de formulaire liées au cours de l'événement xforms-refresh
comme suit :
Si la qualité du nœud change d'invalide à valide, alors le nœud est marqué pour distribution de l'événement xforms-valid
;
Si la qualité du nœud change de valide à invalide, alors le nœud est marqué pour distribution de l'événement xforms-invalid
;
Remarque :
Avant la distribution du gestionnaire d'événementxforms-ready
, aucune commande de formulaire n'est liée à des données d'instance,
de sorte que l'événement xforms-valid
et les autres événements de notification ne sont pas distribués.Voir également :
2.3 E70a : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (
xforms-refresh
section 4.3.4)
2.5 E70c : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-recalculate
section 4.3.6)
2.7 E70d : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.4)
2.11 E70e : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.6.7)
xforms-recalculate
section 4.3.6)Les valeurs de tous les éléments de donnée d'instance correspondent, le cas échéant, avec les contraintes calculate
qui leur sont associées. Toutes les propriétés d'élément de modèle pouvant contenir des expressions calculées sont résolues.
Les valeurs de tous les éléments de donnée d'instance correspondent, le cas échéant, avec les contraintes calculate
qui leur sont associées. Toutes les propriétés d'élément de modèle pouvant contenir des expressions calculées sont résolues.
Outre les changements d'autres valeurs de nœud qui induiront des notifications xforms-value-changed
au cours
d'un événement xforms-refresh
, les propriétés d'élément de modèle qui changent sont marquées afin de permettre aux
événements xforms-revalidate
et xforms-refresh
de mieux déterminer les événements de notification à distribuer.
Si la propriété d'élément de modèle required
change, on devra alors marquer pour distribution soit
l'événement xforms-required
si la propriété required
vaut "true
", soit
l'événement xforms-optional
si celle-ci vaut "false
" ;
Si la propriété d'élément de modèle readonly
change, on devra alors marquer pour distribution soit
l'événement xforms-readonly
si la propriété readonly
vaut "true
", soit
l'événement xforms-readwrite
si celle-ci vaut "false
" ;
Si la propriété d'élément de modèle relevant
change, on devra alors marquer pour distribution soit
l'événement xforms-enabled
si la propriété relevant
vaut "true
", soit
l'événement xforms-disabled
si celle-ci vaut "false
".
Voir également :
2.3 E70a : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (
xforms-refresh
section 4.3.4)
2.4 E70b : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-revalidate
section 4.3.5)
2.7 E70d : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.4)
2.11 E70e : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.6.7)
Quand il s'agit de réitérer un calcul, l'expression XPath est évaluée dans le contexte du nœud d'instance dont la valeur, ou la propriété d'élément de modèle, est associée au calcul.
Quand il s'agit de recalculer une propriété d'élément de modèle, l'expression XPath est évaluée. Le contexte d'évaluation est déterminé à partir de l'expression de liaison du modèle qui aura appliqué la propriété d'élément de modèle, comme défini pour les expressions calculées dans la section 7.4 Le contexte d'évaluation.
xforms-value-changed
) :Distribué en réponse au fait qu'un changement confirmé a eu lieu sur un nœud de donnée d'instance lié à une commande de formulaire, comme lorsque l'utilisateur sort de la commande de formulaire.
Distribué en réponse à un changement sur un nœud de données d'instance lié à une commande de formulaire.
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci en raison d'un changement.
xforms-valid
) :Cet événement est distribué dès lors que la valeur du nœud de donnée d'instance lié change et, en outre,
lorsque le nœud de donnée d'instance lié devient indirectement valide, parce que la valeur de la
propriété d'élément de modèle constraint
aura été évaluée à "true
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-revalidate
(section 4.3.5).
xforms-invalid
) :Cet événement est distribué dès lors que la valeur du nœud de donnée d'instance lié change et, en outre,
lorsque le nœud de donnée d'instance lié devient indirectement invalide, parce que la valeur de la
propriété d'élément de modèle constraint
aura été évaluée à "false
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-revalidate
(section 4.3.5).
xforms-readonly
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change, et, en outre,
lorsque le nœud de données d'instance lié devient indirectement en lecture seule, parce que la valeur de la
propriété d'élément de modèle readonly
aura été évaluée à "true
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-readwrite
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change et, en outre,
lorsque le nœud de données d'instance lié devient indirectement en lecture-écriture, parce que la
propriété d'élément de modèle readonly
aura été évaluée à "false
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-required
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change et, en outre,
lorsque le nœud de données d'instance lié devient indirectement obligatoire, parce que la
propriété d'élément de modèle required
aura été évaluée à "true
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-optional
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change et, en outre,
lorsque le nœud de données d'instance lié devient indirectement optionnel, parce que la
propriété d'élément de modèle required
aura été évaluée à "false
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-enabled
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change et, en outre,
lorsque le nœud de données d'instance lié est indirectement activé, parce que la
propriété d'élément de modèle relevant
aura été évaluée à "true
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-disabled
) :Cet événement est distribué dès lors que la valeur du nœud de données d'instance change et, en outre,
lorsque le nœud de données d'instance lié est indirectement désactivé, parce que la
propriété d'élément de modèle relevant
aura été évaluée à "false
".
Cet événement est distribué, au cours d'un événement xforms-refresh
, si le nœud de données d'instance lié a été marqué
pour distribution de celui-ci par un événement xforms-recalculate
(section 4.3.6)
ou xforms-refresh
(section 4.3.4).
xforms-valid
),
4.4.7 (xforms-invalid
),
4.4.10 (xforms-readonly
),
4.4.11 (xforms-readwrite
),
4.4.12 (xforms-required
),
4.4.13 (xforms-optional
),
4.4.14 (xforms-enabled
) et
4.4.15 (xforms-disabled
) :Distribué en réponse au fait qu'un nœud de donnée d'instance devienne [...].
Distribué en réponse au fait qu'un nœud de données d'instance change et soit, ou devienne [...].
Voir également :
2.3 E70a : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (
xforms-refresh
section 4.3.4)
2.4 E70b : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-revalidate
section 4.3.5)
2.5 E70c : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-recalculate
section 4.3.6)
2.11 E70e : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.6.7)
xforms-select
et xforms-deselect
(section 4.4.3)itemset
. L'énoncé de spécification courant :Cible : item
ou case
Cible : item
, itemset
ou case
xforms-submit-error
est envoyé à xforms:submission
(section 4.4.19)Cible : model
Cible : submission
L'événement xforms-submit-error
est envoyé à l'élément submission
.
xforms-binding-exception
;:, ou de l'attribut instance
d'un élément submission
qui échoue à pointer vers un
élément instance
dans le même élément model
que celui de l'élément submission
.
Voir également :
1.1 E69a : Remplacement d'instance (section 3.3)
1.5 E69b : Remplacement d'instance (section 3.3.3)
8.4 E69d : Remplacement d'instance (section 11.1)
Séquence : le changement de valeur avec changement de focus
xforms-recalculate
xforms-revalidate
[n] xforms-valid
/xforms-invalid
; xforms-enabled
/xforms-disabled
;
xforms-optional
/xforms-required
; xforms-readonly
/xforms-readwrite
xforms-value-changed
DOMFocusOut
DOMFocusIn
xforms-refresh
La réévaluation des expressions de liaison doit intervenir avant l'étape 3 ci-dessus.
Séquence : le changement de valeur
xforms-recalculate
xforms-revalidate
L'événement xforms-refresh
opère la réévaluation des expressions de liaison de l'interface d'utilisateur et distribue
ces événements conformément aux changements des valeurs, des propriétés d'élément de modèle et des validités :
[n] xforms-value-changed
[n] xforms-valid
ou xforms-invalid
[n] xforms-enabled
ou xforms-disabled
[n] xforms-optional
ou xforms-required
[n] xforms-readonly
ou xforms-readwrite
[n] xforms-out-of-range
ou xforms-in-range
effectue d'autres mises à jours différées si nécessaire.
Voir également :
2.3 E70a : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (
xforms-refresh
section 4.3.4)
2.4 E70b : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-revalidate
section 4.3.5)
2.5 E70c : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (xforms-recalculate
section 4.3.6)
2.7 E70d : Recalcul, revalidation, rafraîchissement et événements de l'interface d'utilisateur (section 4.4)
Valeurs légales : toute valeur de type xsd:QName
représentant une définition de type de données dans un schéma XML.
Valeurs légales : toute valeur de type xsd:QName
représentant une définition de type de donnée.
group
et switch
(section 6.1.4)La propriété d'élément de modèle relevant
fournit à l'interface d'utilisateur XForms des indications concernant
la visibilité, le focus et l'ordre de navigation. En général, lorsqu'elle a la valeur "true
", les commandes de formulaires
associées devraient être rendues visibles. Inversement, pour la valeur "false
", les commandes de formulaire associées
devraient être rendues indisponibles, retirées de l'ordre de navigation et ne pas pouvoir recevoir le focus.
La propriété d'élément de modèle relevant
fournit à l'interface d'utilisateur XForms des indications concernant
la visibilité, le focus et l'ordre de navigation. En général, lorsqu'elle a la valeur "true
", les commandes de formulaires
associées devraient être rendues visibles. Inversement, pour la valeur "false
", les commandes de formulaire associées
(et tous les sous-éléments) et les éléments group
et switch
(et leurs contenus) devraient
être rendus indisponibles, retirés de l'ordre de navigation et ne pas pouvoir recevoir le focus.
Remarque :
Une commande de formulaire, un élément group
ou un élément switch
doivent exprimer une seule
liaison de nœud pour être associés à un nœud d'instance.
Voir également :
6.1 E66b : Applicabilité des propriétés d'élément de modèle aux éléments
group
etswitch
(section 9.1.1)
6.2 E66c : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.2.1)
6.6 E66d : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.1)
6.8 E66e : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.2)
p3ptype
(section 6.1.7)input
(section 7.4)<select1 ref="@attr" ... />
<select1 ref="@attr" ... > <label>...</label> </select1>
Voir également :
6.7 E31b : Étiquettes obligatoires sur les éléments
input
(section 9.3.1)
(au moyen de la partie "path" de XPath)
Voir également :
9.1 E67b : Permettre les expressions XPath dans les liaisons (section 13)
boolean-from-string()
ne génère pas d'exception (section 7.7.1)Si la chaîne paramètre ne correspond à aucune de celles mentionnées ci-dessus, dans une comparaison insensible à la casse, alors le
traitement s'interrompt avec une exception (cf. 4.5.4 L'événement xforms-compute-exceptio
n).
Si la chaîne paramètre correspond à l'une des précédentes, dans une comparaison insensible à la casse, la valeur de retour sera
"false
".
avg()
(section 7.8.1)La fonction avg
renvoie la moyenne arithmétique du résultat de la conversion des valeurs de chaîne de chaque nœud de
l'argument ensemble de nœuds en un nombre (type number
). On obtient la somme en se servant de la fonction sum()
;
on divise ensuite celle-ci, avec la fonction div()
, par la valeur calculée au moyen de la fonction count()
.
Si son paramètre est un ensemble de nœuds vide, alors la fonction renvoie la valeur "NaN
".
La fonction avg
renvoie la moyenne arithmétique du résultat de la conversion des valeurs de chaîne de chaque nœud de
l'argument ensemble de nœuds en un nombre (type number
). On obtient la somme en se servant de la fonction sum()
;
on divise ensuite celle-ci, avec la fonction div()
, par la valeur calculée au moyen de la fonction count()
.
Si son paramètre est un ensemble de nœuds vide ou si un nœud quelconque est évalué à "Nan
",
alors la fonction renvoie la valeur "NaN
".
index()
ne génère pas d'exception (section 7.8.5)Si l'argument fourni n'identifie aucun élément repeat
, alors le traitement s'interrompt avec une exception
(cf. 4.5.4 L'événement"xforms-help
").
Si l'argument fourni n'identifie aucun élément repeat
, la fonction renvoie la valeur "NaN
".
days-from-date()
(section 7.10.2)Si le paramètre chaîne représente une valeur lexicale légale de type xsd:date
ou xsd:dateTime
, alors la
valeur renvoyée est égale à la différence en nombre de jours entre la date fournie et la valeur "1970-01-01
".
Les composants des heures, minutes et secondes sont ignorés après normalisation. Tout autre paramètre en entrée renverra
la valeur "NaN
".
Si le paramètre chaîne représente une valeur lexicale légale de type xsd:date
ou xsd:dateTime
, alors la
valeur renvoyée est égale à la différence en nombre de jours entre la date fournie
(normalisée au temps universel coordonné UTC) et la
valeur "1970-01-01". Les composants des heures, minutes et secondes sont ignorés après normalisation. Tout autre paramètre en entrée
renverra la valeur "NaN
".
Voir également :
4.7 E30b : La fonction
seconds-from-dateTime()
(section 7.10.3)
seconds-from-dateTime()
(section 7.10.3)Si le paramètre chaîne représente une valeur lexicale légale de type xsd:dateTime
, alors la valeur renvoyée est égale à
la différence en nombre de secondes entre la valeur de type dateTime
fournie et la valeur "1970-01-01T00:00:00Z
".
Si aucun fuseau horaire n'est indiqué, alors la valeur par défaut fournie par la mise en œuvre sera utilisée.
Tout autre paramètre de chaîne en entrée renverra la valeur "NaN
".
Si le paramètre chaîne représente une valeur lexicale légale de type xsd:dateTime
, alors la valeur renvoyée est égale à
la différence en nombre de secondes entre la valeur de type dateTime
fournie (normalisée au temps universel coordonné
UTC) et la valeur "1970-01-01T00:00:00Z
". Si aucun fuseau horaire n'est indiqué,
il s'agit alors du temps universel coordonné UTC. Tout autre paramètre de chaîne en entrée renverra
la valeur "NaN
".
Voir également :
seconds()
(section 7.10.4)Le signe du résultat correspondra à celui de la durée. Si aucun fuseau horaire n'est indiqué, alors la valeur par défaut de la
mise en œuvre sera utilisée. Les composants des années et des mois, si présents, sont ignorés. Tout autre paramètre en entrée
renverra la valeur "NaN
".
Le signe du résultat correspondra à celui de la durée. Les composants des années et des mois, si présents, sont ignorés.
Tout autre paramètre en entrée renverra la valeur "NaN
".
Un attribut optionnel qui définit une indication de l'apparence.
Un attribut optionnel qui définit une indication de l'apparence. Si absent, l'agent utilisateur est libre de choisir la restitution qui convient.
output
(section 8.1.5)Une expression XPath à évaluer. Le résultat de l'évaluation est restitué par la commande de formulaire. Si des attributs de liaison sont présents pour sélectionner un nœud, cet attribut n'a aucun effet. L'expression XPath est réévaluée dès qu'il se produit un changement dans un nœud auquel l'expression se réfère.
Une expression XPath à évaluer. La chaîne résultant de l'évaluation est restituée par la commande de formulaire. Si des attributs de liaison sont présents pour sélectionner un nœud, cet attribut n'a aucun effet. L'expression XPath est réévaluée dès qu'il se produit un changement dans un nœud auquel l'expression se réfère.
<message level="modeless" ev:event="xforms-help" ev:propagate="stop>
<message level="modeless" ev:event="xforms-help" ev:propagate="stop">
group
et switch
(section 9.1.1)L'élément group
sert de conteneur pour définir une hiérarchie de commandes de formulaire. Les groupes peuvent
s'imbriquer pour créer des hiérarchies complexes. Les propriétés d'élément de modèle qui s'appliquent aux commandes de formulaire
s'appliquent également à l'élément group
, et elles ont priorité sur celles appliquées aux membres individuels du groupe.
Attributs communs : Communs, Communs I.U., Liaison de nœud simple (optionnel)
Remarque :
Quand aucune propriété d'élément de modèle ne s'applique à l'expression de liaison de l'élément group
,
on peut l'assimiler à une commodité de création pour les expressions XPath relatives utilisées par les commandes de formulaire
au sein du groupe.
Quand des propriétés d'élément de modèle s'appliquent, alors elles concernent toutes les commandes de formulaire dans l'élément group
.
Cela signifie, par exemple, que si un groupe est lié à un nœud de données d'instance non pertinent, toutes les commandes de formulaire
qui sont sous-éléments seront également traitées comme non pertinentes.
L'élément group
sert de conteneur pour définir une hiérarchie de commandes de formulaire. Les groupes peuvent s'imbriquer
pour créer des hiérarchies complexes.Un groupe est considéré non pertinent si, et seulement si, la liaison de nœud simple
se résoud en un ensemble de nœuds vide ou en un nœud non pertinent.
Attributs communs : Communs, Communs I.U., Liaison de nœud simple (optionnel)
Remarque :
Si un élément group
n'est pas pertinent, alors la démarche de restitution employée pour indiquer la non-pertinence
s'applique au contenu entier du groupe.
Voir également :
3.2 E66a : Applicabilité des propriétés d'élément de modèle aux éléments
group
etswitch
(section 6.1.4)
6.2 E66c : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.2.1)
6.6 E66d : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.1)
6.8 E66e : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.2)
group
et switch
(section 9.2.1)Cet élément contient un ou plusieurs éléments case dont l'un est restitué à un moment donné.
Cet élément contient un ou plusieurs éléments case dont l'un est restitué à un moment donné. La non-pertinence d'un
élément switch
est déterminée comme pour l'élément group
et s'applique de même au contenu entier.
Voir également :
3.2 E66a : Applicabilité des propriétés d'élément de modèle aux éléments
group
etswitch
(section 6.1.4)
6.1 E66b : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.1.1)
6.6 E66d : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.1)
6.8 E66e : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.2)
case
: changer les états plutôt que les attributs (section 9.2.2)Cet élément englobe un balisage à restituer conditionnellement. L'attribut selected
qui détermine l'état sélectionné
peut se manipuler par programme via le DOM, ou de manière déclarative via l'action XForms toggle
.
Cet élément englobe un balisage à restituer conditionnellement. L'attribut selected
détermine l'état sélectionné initial.
Voir également :
6.4 E25a : L'élément
toggle
: changer les états plutôt que les attributs (section 9.2.3)
toggle
: changer les états plutôt que les attributs (section 9.2.3)Cette action ajuste tous les attributs selected
sur les éléments case
affectés afin de refléter le nouvel état,
et opère ensuite ce qui suit :
Cette action ajuste tous les états sélectionnés (pas les valeurs d'attribut) sur les éléments case
affectés afin de refléter
le nouvel état de l'élément switch
contenant l'élément case
identifié, et opère ensuite ce qui suit :
Voir également :
6.3 E25b : L'élément
case
: changer les états plutôt que les attributs (section 9.2.2)
case
dans l'action toggle
(section 9.2.3)Une référence obligatoire à une section case
dans la structure conditionnelle.
Une référence obligatoire à un élément case
.
group
et switch
(section 9.3.1)<!-- répétition déroulée --> <group ref="/cart/items/item[1]"><input ref="." .../><html:br/></group> <group ref="/cart/items/item[2]"><input ref="." .../><html:br/></group> <group ref="/cart/items/item[3]"><input ref="." .../><html:br/></group> <group ref="/cart/items/item[4]"><input ref="." .../><html:br/></group>
Voir également :
3.2 E66a : Applicabilité des propriétés d'élément de modèle aux éléments
group
etswitch
(section 6.1.4)
6.1 E66b : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.1.1)
6.2 E66c : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.2.1)
6.8 E66e : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.2)
input
(section 9.3.1)<repeat nodeset="/cart/items/item"> <input ref="." ... /><html:br/> </repeat>
<repeat nodeset="/cart/items/item"> <input ref="." ...> <label>...</label> </input> <html:br/> </repeat>
Voir également :
4.1 E31a : Étiquettes obligatoires sur les éléments
input
(section 7.4)
group
et switch
(section 9.3.2)<repeat ...> ... </repeat>
... équivaut à :
<repeat ...> <group>...</group> </repeat>
... qui équivaut à :
<group repeat-...> ... </group>
<repeat ...> ... </repeat>
... équivaut à :
<repeat ...> <group ref=".">...</group> </repeat>
... qui équivaut à :
<group repeat-...> ... </group>
Remarque :
Une conséquence de ces équivalences est que la liaison de nœud simple exprimée sur le groupe implique une applicabilité de la non-pertinence.
Voir également :
3.2 E66a : Applicabilité des propriétés d'élément de modèle aux éléments
group
etswitch
(section 6.1.4)
6.1 E66b : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.1.1)
6.2 E66c : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.2.1)
6.6 E66d : Applicabilité des propriétés d'élément de modèle aux élémentsgroup
etswitch
(section 9.3.1)
insert
: utiliser le premier nœud dans l'ensemble de nœuds (section 9.3.5)L'attribut at
est évalué afin de déterminer l'index d'insertion (une valeur numérique qui est l'index dans
l'ensemble de nœuds). L'attribut position
définit si le nouveau nœud s'insère avant ("before
")
ou après ("after
") cet index.
L'attribut at
est évalué afin de déterminer l'index d'insertion (une valeur numérique qui est l'index dans
l'ensemble de nœuds). Son évaluation a lieu dans l'ordre du document, avec pour nœud contextuel, le premier de
la liaison de l'ensemble de nœuds, avec pour dimension contextuelle, la dimension de la liaison de l'ensemble de nœuds et
pour valeur contextuelle de position, la valeur "1". L'attribut position
définit si le nouveau nœud s'insère
avant ("before
") ou après ("after
") cet index.
Le nouveau nœud est créé par clonage du dernier membre de la collection homogène, lequel est défini par les données d'instance d'initialisation.
Le nouveau nœud est créé par clonage du dernier membre de la collection homogène.
Voir également :
6.11 E49b : Supprimer les données d'insertion prototypes (section 9.3.5)
6.17 E49c : Supprimer les données d'insertion prototypes (section 9.3.8)
L'ensemble de nœuds des données d'instance initiales est localisé afin de déterminer le membre prototypique de la collection. Le dernier membre de cette collection est cloné afin de produire le nœud qui sera inséré.
La liaison de l'ensemble de nœuds identifie une collection homogène dans les données d'instance. Le dernier membre de cette collection est cloné afin de produire le nœud qui sera inséré.
Voir également :
6.10 E49a : Supprimer les données d'insertion prototypes (section 9.3.5)
6.17 E49c : Supprimer les données d'insertion prototypes (section 9.3.8)
startindex
utilisé pour les répétitions internes (section 9.3.5)3. L'index de toute séquence, qui se répète, liée à la collection homogène dans laquelle le nœud aura été ajouté, est mis à jour afin de pointer vers le nœud nouvellement ajouté. Les index des collections de répétition imbriquées internes sont réinitialisés à "1" ;
3. L'index de toute séquence, qui se répète, liée à la collection homogène dans laquelle le nœud aura été ajouté, est mis à jour
afin de pointer vers le nœud nouvellement ajouté. Les index des collections de répétition imbriquées internes sont réinitialisés
à la valeur de startindex
;
Voir également :
6.18 E35a :
startindex
utilisé pour les répétitions internes (section 9.3.8)
6.19 E35b :startindex
utilisé pour les répétitions internes (section 9.3.9)
6.15 E35d :startindex
utilisé pour les répétitions internes (section 9.3.7)
nodeset
(section 9.3.5 et section 9.3.6)La collection homogène à mettre à jour est déterminée par l'évaluation de l'attribut de liaison nodeset
;
La collection homogène à mettre à jour est déterminée par l'évaluation de la liaison de l'ensemble de nœuds. Si la collection
est vide, l'action insert
n'a aucun effet ;
La collection homogène à mettre à jour est déterminée par l'évaluation de l'attribut de liaison nodeset
. Si la collection
est vide, l'action delete
n'a aucun effet ;
La collection homogène à mettre à jour est déterminée par l'évaluation de la liaison de l'ensemble de nœuds.
Si la collection est vide, l'action delete
n'a aucun effet ;
Voir également :
6.16 E65b : Liaison de l'ensemble de nœuds et pas
nodeset
(section 9.3.8)
setindex
(section 9.3.7)Si l'index sélectionné est "0", ou inférieur, un événement xforms-scroll-first
est distribué et l'index est fixé à "1".
Si l'index sélectionné est supérieur à celui du dernier élément de répétition, un événement xforms-scroll-last
est distribué et la valeur de l'index est fixée à celle de l'index de ce dernier élément.
Si l'index sélectionné est "0", ou inférieur, un événement xforms-scroll-first
est distribué et l'index est fixé à "1".
Si l'index sélectionné est supérieur à celui du dernier élément de répétition, un événement xforms-scroll-last
est distribué et la valeur de l'index est fixée à celle de l'index de ce dernier élément. Si l'index est évalué à "NaN
",
l'action n'a aucun effet.
startindex
utilisé pour les répétitions internes (section 9.3.7)Les index des collections de répétition imbriquées internes sont réinitialisés à "1".
Les index des collections de répétition imbriquées internes sont réinitialisés à la valeur de startindex
.
Voir également :
6.18 E35a :
startindex
utilisé pour les répétitions internes (section 9.3.8)
6.19 E35b :startindex
utilisé pour les répétitions internes (section 9.3.9)
6.12 E35c :startindex
utilisé pour les répétitions internes (section 9.3.5)
nodeset
(section 9.3.8)L'attribut nodeset
est évalué afin de localiser la collection homogène sur laquelle doit opérer l'élément repeat
;
La liaison d'ensemble de nœuds est évalué afin de localiser la collection homogène sur laquelle doit opérer l'élément repeat
;.
Voir également :
6.13 E65a : Liaison d'ensemble de nœuds et pas
nodeset
(section 9.3.5 et section 9.3.6)
2. Les nœuds correspondants dans l'élément instance dans le document source sont localisés (ces nœuds fournissent les valeurs initiales et servent aussi d'instances prototypes pour la construction des membres de la collection de répétition) ;
4. Le modèle de l'interface d'utilisateur défini dans l'élément repeat
est lié à cette instance prototype.
S'il y a une contradiction de type entre l'instance prototype et les restrictions de liaison des commandes d'interface d'utilisateur,
une erreur est signalée et le traitement se termine ;
Les données d'instance initiales produisent le membre prototype de la collection homogène, lequel sert à construire les membres de la
collection homogène pendant l'initialisation de l'interface d'utilisateur (cf. 4.2.2 L'événement xforms-model-construct-done
).
Cette instance prototype sert également à l'action insert
dans la création des nouveaux membres de la collection.
Pour créer des collections homogènes, les données d'instance initiales doivent définir au moins un membre de la collection ;
cette condition revient à imposer des données d'instance en plus d'un schéma, et la même justification s'applique.
Voir également :
6.10 E49a : Supprimer les données d'insertion prototypes (section 9.3.5)
6.11 E49b : Supprimer les données d'insertion prototypes (section 9.3.5)
startindex
utilisé pour les répétitions internes (section 9.3.8)3. L'index de cette structure de répétition est initialisé à la valeur de l'attribut startindex
;
3. L'index de cette structure de répétition est initialisé à la valeur de l'attribut startindex
. Si la valeur initiale
de startindex
est inférieure à "1", elle devient "1" par défaut. Si la valeur d'index est supérieure à
l'ensemble de nœuds initial, alors elle devient celle de la dimension de l'ensemble de nœuds ;
Voir également :
6.19 E35b :
startindex
utilisé pour les répétitions internes (section 9.3.9)
6.12 E35c :startindex
utilisé pour les répétitions internes (section 9.3.5)
6.15 E35d :startindex
utilisé pour les répétitions internes (section 9.3.7)
startindex
utilisé pour les répétitions internes (section 9.3.9)Notez que l'index d'une répétition interne commence toujours à "1".
Voir également :
6.18 E35a :
startindex
utilisé pour les répétitions internes (section 9.3.8)
6.12 E35c :startindex
utilisé pour les répétitions internes (section 9.3.5)
6.15 E35d :startindex
utilisé pour les répétitions internes (section 9.3.7)
L'action action
permet de regrouper plusieurs actions.
Cette action détermine l'invocation des sous-actions dans l'ordre indiqué dans le document.
Lorsqu'on utilise l'élément action
pour regrouper des actions, il faut faire attention à lister l'événement sur
l'élément action
plutôt que sur les actions qui y sont contenues.
Notez que, dans l'exemple ci-dessus, la déclaration ev:event="DOMActivate"
apparaît sur l'élément action
.
Le placement de cette déclaration sur l'une, ou l'autre, ou sur les deux actions contenues ne produira aucun effet,
parce que cet exemple est régi par l'action implicite des attributs observer
et handler
[XML Events]. Comme défini dans la spécification des événements XML, si les attributs observer
et handler
sont tous deux omis, alors c'est le parent qui devient l'observateur [NdT. observer]. De ce fait,
placer une déclaration ev:event="DOMActivate"
sur les enfants de l'élément action
va faire que
l'élément action
deviendra l'observateur des événements individuels. Par conséquent, ces actions ne seront jamais
déclenchées puisque les événements arriveront sur l'élément trigger
, et non sur l'élément action
.
reset
, rebuild
, recalculate
, revalidate
et refresh
(sections 10.1.11 et 10.1.3 à 10.1.6)La valeur obligatoire de type IDREF
du modèle à traiter.
reset
) :Une sélection obligatoire des données d'instance à réinitialiser, comme défini dans 3.2.3 Les attributs de liaison de nœud simple.
Un sélecteur de modèle XForms optionnel, comme défini dans la section 3.2.3 Les attributs de liaison de nœud simple.
Voir également :
xforms-focus
(section 10.1.7)Cette action place le focus sur la commande de formulaire identifiée par l'attribut control
en distribuant
un événement xforms-focus
(cf. 4.3.2 L'événement xforms-focus
).
Cette action distribue un événement xforms-focus
à l'élément identifié par l'attribut control
.
Voir également :
Un indicateur optionnel du comportement du lien.
Un indicateur optionnel du comportement du lien. Si cet attribut est absent, la valeur implicite est "replace
".
Voir également :
setvalue
(section 10.1.9)Une expression XPath optionnelle à évaluer, le résultat étant stocké dans le nœud de donnée d'instance sélectionné.
Une expression XPath optionnelle à évaluer, le résultat étant stocké dans le nœud de donnée d'instance sélectionné. Le contexte d'évaluation de cette expression est celui résultant de la liaison de nœud simple.
xforms-submit
(section 11.1)1. Un nœud des données d'instance est sélectionné, en fonction des attributs de l'élément
submission
. Le nœud indiqué et tous ceux pour lesquels c'est un ancêtre sont retenus pour le reste du processus de soumission ;
1. Un nœud des données d'instance est sélectionné, en fonction des attributs de l'élément
submission
. Le nœud indiqué et tous ceux pour lesquels c'est un ancêtre sont retenus pour le reste du processus de soumission. Tout nœud considéré non pertinent, comme défini dans la section 6.1.4, est supprimé ;
Il ne peut y avoir, en aucun cas, plus d'un seul traitement de soumission concurrent en cours pour un modèle XForms particulier.
Il ne peut y avoir, en aucun cas, plus d'un seul traitement de soumission concurrent en cours pour une soumission XForms particulière.
...
replace
sur l'élément submission
est "instance
", la réponse est analysée en tant que code XML et
toutes les données d'instance internes correspondant à l'instance soumise sont remplacées par le résultat, en utilisant le même traitement
que celui des données d'instance chargées au travers de l'attribut src
, et l'événement xforms-model-construct
est distribué à l'élément model
. Le traitement de soumission s'achève alors après distribution d'un
événement xforms-submit-done
;...
replace
sur l'élément submission
est "instance
", la réponse est analysée en tant que code XML. Si
l'analyse échoue, un événement xforms-link-exception
est généré. Si l'analyse réussit, alors toutes les données
d'instance internes correspondant à l'instance soumise sont remplacées par le résultat. Une fois les données d'instance XML
remplacées, les opérations rebuild
, recalculate
, revalidate
et refresh
sont réalisées
sur l'élément model
, sans distribution d'événements invoquant ces quatre opérations. Le traitement de soumission
s'achève alors après distribution d'un événement xforms-submit-done
;Pour une réponse de succès comprenant le corps d'un type de média XML, lorsque la valeur de l'attribut replace
sur l'élément submission
est "instance
", la réponse est analysée en tant que code XML et
toutes les données d'instance internes correspondant à l'instance soumise sont remplacées par ...
Pour une réponse de succès comprenant le corps d'un type de média XML, lorsque la valeur de l'attribut replace
sur l'élément submission
est "instance
", la réponse est analysée en tant que code XML et
toutes les données d'instance internes de l'instance indiquée par l'attribut instance
sont remplacées par ...
Voir également :
1.1 E69a : Remplacement d'instance (section 3.3)
1.5 E69b : Remplacement d'instance (section 3.3.3)
2.10 E69c : Remplacement d'instance (section 4.5.1)
2. Toutes les données d'instance sélectionnées sont revalidées, selon les règles dans 4.3.5 L'événement xforms-revalidate, en ne prenant en compte que les nœuds d'espace de nommage concernés pour la sérialisation comme décrit dans 3.3.3 L'élément submission.
2. La validité de toutes les données d'instance sélectionnées est vérifiée selon les règles dans la section 4.3.5 L'événement xforms-revalidate (aucun événement de notification n'est marqué pour distribution dans cette opération).
Toute donnée d'instance invalide interrompt le traitement de la soumission ...
Tout nœud de données d'instance sélectionné, qui est obligatoire mais vide ou qui est invalide, interrompt le traitement de soumission ...
Pour une réponse de succès comprenant le corps d'un type de média XML ...
Pour une réponse de succès comprenant le corps d'un type de média XML (comme défini par les indicateurs de type de contenu dans [RFC 3023]) ...
Pour une réponse de succès comprenant le corps d'un type de média non-XML ...
Pour une réponse de succès comprenant le corps d'un type de média non-XML (c'est-à-dire, avec un type de contenu ne correspondant à aucun des indicateurs dans [RFC 3023]) ...
Content-Type
PEUT, et non DOIT, être inclus (section 11.5)Content-Type: multipart/form-data; boundary=AaB03x Content-Length: xxx --AaB03x Content-Disposition: form-data; name="document"; filename="b.txt" Content-Type: text/plain; charset=iso-8859-1 Voici un fichier. Il fait deux lignes. --AaB03x Content-Disposition: form-data; name="title" Content-Type: text/plain; charset=iso-8859-1 Un fichier --AaB03x Content-Disposition: form-data; name="summary" Content-Type: text/plain; charset=iso-8859-1 Voici mon fichier test --AaB03x--
Content-Type: multipart/form-data; boundary=AaB03x Content-Length: xxx --AaB03x Content-Disposition: form-data; name="document"; filename="b.txt" Content-Type: text/plain; charset=iso-8859-1 Voici un fichier. Il fait deux lignes. --AaB03x Content-Disposition: form-data; name="title" Un fichier --AaB03x Content-Disposition: form-data; name="summary" Voici mon fichier test --AaB03x--
application/x-www-form-urlencoded
(section 11.6)2. Les nœuds d'élément sélectionnés pour l'inclusion sont codés selon la description EltName=value{sep}
,
dans laquelle =
est un caractère littéral, {sep}
est le caractère séparateur indiqué par l'attribut separator
sur l'élément submission
, EltName
représente le nom local de l'élément et value
représente
le contenu du nœud de texte.
2. Les nœuds d'élément sélectionnés pour l'inclusion sont codés selon la description EltName=value
, dans laquelle
=
est un caractère littéral, EltName
représente le nom local de l'élément et value
représente le contenu du nœud textuel. Le caractère séparateur {sep}
, donné par l'attribut separator
sur l'élément submission
, s'utilise entre les couples nom-valeur codés :
EltName=value{sep}EltName=value{sep}EltName=value
.
Voir également :
4.2 E67a : Permettre les expressions XPath dans les liaisons (section 7.4)
model
optionnel pour les actions reset
, rebuild
, recalculate
, revalidate
et refresh
(dans le schéma XForms cité en référence normative dans l'Annexe A)Pour la définition de l'attribut model
dans les éléments reset
, rebuild
, recalculate
,
revalidate
et refresh
:
<xsd:attribute name="model" type="xsd:IDREF" use="required">
<xsd:attribute name="model" type="xsd:IDREF" use="optional">
Voir également :
Pour la définition de l'attribut show
de l'élément load
:
<xsd:attribute name="show" use="optional">
<xsd:attribute name="show" use="optional" default="replace">
Voir également :
7.4 E22 : <xforms:load show="replace"> est la valeur implicite (section 10.1.8)
xf:minOccurs
et xf:maxOccurs
(dans le schéma XForms en référence normative dans l'Annexe A)minOccurs
et maxOccurs
de la définition de l'élément bind
:<xsd:attribute name="maxOccurs" type="xforms:XPathExpression" use="optional" default="INF"/> <xsd:attribute name="minOccurs" type="xforms:XPathExpression" use="optional" default="0"/>
case
d'un élément switch
peut être vide (dans le schéma XForms en référence normative dans l'Annexe A)Pour la définition du contenu de l'élément case
:
<xsd:sequence maxOccurs="unbounded">
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
complexType
n'a pas d'attribut name
dans l'exemple payschema.xsd (Annexe G.1)<xsd:element name="payment"> <xsd:complexType name="payment"> <xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:element name="payment"> <xsd:complexType> <xsd:sequence minOccurs="0" maxOccurs="unbounded">
Voir également :
11.2 E26b : Une carte de crédit devrait avoir pour type de données des chiffres (annexe G.1)
<xsd:simpleType name="cc"> <xsd:restriction base="xsd:string"> <xsd:pattern value="\s*((\d+)[-\s])+([\d]+)\s*" /> </xsd:restriction> </xsd:simpleType>
<xsd:simpleType name="cc"> <xsd:restriction base="xsd:string"> <xsd:minLength value="12"/> <xsd:maxLength value="19"/> <xsd:pattern value="[0-9]+"/> </xsd:restriction> </xsd:simpleType>
Voir également :
11.1 E26a :
complexType
n'a pas d'attributname
dans l'exemple payschema.xsd (annexe G.1)