diff --git a/xep-0050.xml b/xep-0050.xml index 1d553b22..a2e38b93 100644 --- a/xep-0050.xml +++ b/xep-0050.xml @@ -25,6 +25,12 @@ http://www.xmpp.org/schemas/commands.xsd &linuxwolf; + + 1.3.0 + 2020-06-09 + kis + Clarify illegal uses of 'execute'. + 1.2.3 2019-03-26 @@ -370,6 +376,7 @@ ]]>

The <command/> SHOULD include an <actions/> element, which specifies the details of what the allowed actions are for this stage of execution. Each element within <action/> matches a possible value for the <command/> element's "action" attribute. The "execute" attribute defines which of the included actions is considered the equivalent to "execute" for this stage. In the above example, the only allowed action is to progress to the next stage, which is also the default.

+

Note: The "execute" action (not the attribute) is ambiguous and may have undefined behaviour in some implementations. Relying on the specific behavior of the execute action is discouraged, especially in cases where the "complete" action is not allowed and the "execute" attribute is not specified (see also Command Actions.

The requester then submits the form, maintaining the command node and sessionid:

@@ -526,17 +533,19 @@
  • If there is an <actions/> element, the user-agent usually uses a multi-stage dialog or view, such as a wizard.
      -
    • The action "execute" is always allowed, and is equivalent to the action "next".
    • +
    • The action "execute" is equivalent to the action specified in the "execute" attribute. If the "execute" attribute is absent, it defaults to "next". A form which has an <actions/> element and an "execute" attribute which evaluates (taking the default into account if absent) to an action which is not allowed is therefore invalid.
    • The "prev" action is typically the "back" or "previous" button or option in a wizard. If <prev/> is not contained by the <actions/>, it is disabled.
    • The "next" action is typically the "next" button or option in a wizard. If <next/> is not contained by the <actions/>, it is disabled.
    • The "complete" action is typically the "finish" or "done" button or option in a wizard. If <complete/> is not contained by the <actions/>, it is disabled.
    • If the <actions/> possesses the "execute" attribute, that value is the default button or option. If the <actions/> does not possess the "execute" attribute, there is no default button or option.
    • +
    • As the "execute" command is equivalent to another command ("next" in the absence of an "execute" attribute), it is not suggested that a user-agent shows both the "execute" and the command that "execute" is an alias of in their interface.
  • Responders SHOULD use the following guidelines when providing <actions/>: