Skip to content

Commit 38d50a6

Browse files
author
Rob Sanderson
committed
tidy action definition
1 parent 16a1c45 commit 38d50a6

1 file changed

Lines changed: 17 additions & 19 deletions

File tree

source/presentation/4.0/model.md

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1133,34 +1133,32 @@ The value of `accompanyingContainer` _MUST_ be a JSON object with the `id` and `
11331133
### action
11341134
{: #action}
11351135

1136-
Only valid on SpecificResource when bodies of activating annotations
1136+
The `action` property is used on Specific Resources that are in the `body` array of activating annotations (Annotations with the "activating" motivation). The values of the property are named actions which the client is being instructed to carry out upon the `source` of the Specific Resource. The list of possible values and their corresponding effects is given in the table below. Clients _MUST_ process the Specific Resources in the order given in the Annotation, and _MUST_ process the actions in the order given in the array. The client _MUST_ perform all of the actions on the respective resources, and if it cannot, then it _MUST NOT_ perform any of them. The set of actions within an Annotation is, thus, treated as an atomic transaction. If the activating annotation that is currently being processed is disabled as part of the processing, the client _MUST NOT_ stop processing the ordered list when this occurs but keep processing until the end of the current Annotation's set of actions. Each activating Annotation is processed completely before moving to another activating Annotation's actions, even if an action causes another activating Annotation's actions to be triggered. Instead, the activating Annotations are queued up in order that they are triggered, and when the client finishes one such annotation it can begin to process the next, and so on.
11371137

1138-
body of the activating anno is an ordered list of SpecificResource
1138+
The possible values of `action` are:
11391139

1140-
...which may have selectors eg for AnimationSelector
1141-
...but may just have action which are processed in order; client performs the action on the source.
1142-
1143-
The client must perform all the actions; if it can't perform all of them it must not perform any.
1144-
If the activating annotation that is currently being processed is disabled as part of that processing, don't stop processing the ordered list, keep going through to the end.
1145-
1146-
Only process one set of activating anno bodies at a time. If a body causes another activating anno to be triggered, queue up that activating anno and don't tackle it until you've finished processing all the bodies of the current one.
1147-
1148-
values are:
1140+
| Value | Description |
1141+
| ----- | ----------- |
1142+
| enable | The acted-upon resource is now able to be selected, or, if it is an activating annotation, it is able to be triggered |
1143+
| disable | The acted-upon resource is not able to be selected or triggered |
1144+
| show | The "hidden" behavior is removed from the acted-upon resource, if it has it |
1145+
| hide | The "hidden" behavior is added to the acted-upon resource, if it does not have it |
1146+
| reset | A resource with a timeline (such as a container with a `duration` or internal clock (such as a video) has the clock reset to 0 |
1147+
| start | Time-based content resources or animations within resources that are not playing are started |
1148+
| stop | Time-based content resources or animations within resources that are playing are stopped|
1149+
| select | The acted-upon resource is selected for use, such as a Camera within a Scene |
11491150

1150-
* enable (make selectable, or makes an activating anno triggerable)
1151-
* disable (inverse)
1152-
* show (removes behavior:hidden)
1153-
* hide (applies behavior:hidden)
1154-
* reset (rewind AV to beginning)
1155-
* stop (animations in models; time-based content resources that are not painted into duration)
1156-
* start (ditto)
1157-
* select (rarely used because scope)
1151+
The value of `action` _MUST_ be an array of strings, where each item in the array is drawn from the above list or a registered extension.
11581152

11591153
* A Specific Resource _MAY_ have the `action` property.<br/>
11601154
Clients _SHOULD_ process the `action` property on Specific Resources.
11611155
* Other types of resource _MUST NOT_ have the `action` property.<br/>
11621156
Clients _SHOULD_ ignore `action` on other types of resource.
11631157

1158+
{% include api/code_header.html %}
1159+
```json
1160+
"action": ["show", "enable"]
1161+
```
11641162

11651163
### angle
11661164
{: #angle}

0 commit comments

Comments
 (0)