目次 | 前へ | 次へ | 下へ |
この章は、XForms処理系が到達する様々な状態、及びそれらの状態のそれぞれを終了する際の、ありうる状態遷移を列挙することで、XForms処理モデルを宣言型で定義する。XForms処理系は、最終的な結果がこの章に説明されているのと同じとなる限り、いかなる方法で実装されてもよい。
状態遷移は、一般的に、XFormsの部分木にイベントが送られることで始まる。XForms処理モデルは、次の種類のイベントから成っている。
初期化
対話
通知
エラー報告
XForms処理は、イベント、イベントハンドラ、イベント応答で定義される。XFormsは、 イベント捕捉フェーズ、目標へのイベント到達、イベントバブルフェーズという、[DOM2 Events][XML Events]で定義されるイベントシステムを用いている。
この章を通して、"フォームコントロール"を目標要素と呼んでいるが、input
、secret
、textarea
、output
、upload
、trigger
、range
、submit
、select
、select1
、又はgroup
要素のいずれかということに対する簡略表記である。
イベント名 | 中止 | バブル | 目標要素 |
---|---|---|---|
4.2 初期化イベント | |||
xforms-model-construct | できない | する | model |
xforms-model-construct-done | できない | する | model |
xforms-ready | できない | する | model |
xforms-model-destruct | できない | する | model |
4.3 対話イベント | |||
xforms-previous | できる | しない | フォームコントロール |
xforms-next | できる | しない | フォームコントロール |
xforms-focus | できる | しない | フォームコントロール |
xforms-help | できる | する | フォームコントロール |
xforms-hint | できる | する | フォームコントロール |
xforms-rebuild | できる | する | model |
xforms-refresh | できる | する | model |
xforms-revalidate | できる | する | model |
xforms-recalculate | できる | する | model |
xforms-reset | できる | する | model |
xforms-submit | できる | する | submission |
4.4 通知イベント | |||
DOMActivate | できる | する | フォームコントロール |
xforms-value-changed | できない | する | フォームコントロール |
xforms-select | できない | する |
item or case
|
xforms-deselect | できない | する |
item or case
|
xforms-scroll-first | できない | する | repeat |
xforms-scroll-last | できない | する | repeat |
xforms-insert | できない | する | instance |
xforms-delete | できない | する | instance |
xforms-valid | できない | する | フォームコントロール |
xforms-invalid | できない | する | フォームコントロール |
DOMFocusIn | できない | する | フォームコントロール |
DOMFocusOut | できない | する | フォームコントロール |
xforms-readonly | できない | する | フォームコントロール |
xforms-readwrite | できない | する | フォームコントロール |
xforms-required | できない | する | フォームコントロール |
xforms-optional | できない | する | フォームコントロール |
xforms-enabled | できない | する | フォームコントロール |
xforms-disabled | できない | する | フォームコントロール |
xforms-in-range | できない | する | フォームコントロール |
xforms-out-of-range | できない | する | フォームコントロール |
xforms-submit-done | できない | する | submission |
xforms-submit-error | できない | する | submission |
4.5 エラー報告 | |||
xforms-binding-exception | できない | する | 束縛表現を含むことのできる任意の要素 |
xforms-link-exception | できない | する | model |
xforms-link-error | できない | する | model |
xforms-compute-exception | できない | する | model |
この項は、初期化フェーズの様々な段階を定義する。処理系は、xforms-model-construct
イベントを包含文書の中の各XFormsモデルに送ることから始める。XForms処理系自体に初期化を要求する方法は、実装依存である。
XForms処理系により各XFormsモデルに送られる。
目標: model
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションは、次のような結果となる。
すべてのXMLスキーマがロードされる。リモートの文書をアクセスする際、又は処理する際にエラーが発生すると、処理は例外で停止する(4.5.2 xforms-link-exceptionイベント)。
初期インスタンスデータの外部ソースが与えられていれば、XPathデータモデル[7 XFormsにおけるXPath表現]が構築される。そうでなく、インラインの初期インスタンスデータが与えられれば、それが代わりに使われる。外部初期データが整形式のXMLでなかったり、取得できなかったりすると、処理は例外で停止する(4.5.2 xforms-link-exceptionイベント)。どちらも与えられなければ、データモデルはこのフェーズではなく、利用者インタフェース構築の際に(4.2.2 xforms-model-construct-doneイベント)構築される。
適用可能であれば、P3Pが初期化される。[P3P 1.0]
インスタンスデータが構築される。インスタンスデータに挿入された全ての文字列がUnicodeに正規化される。全てのモデル項目特性が、すべてのbind
要素を文書順序で処理することで初期化される。それぞれのbind
に対して、
bindに付いているnodeset
属性が評価され、その結果ノード集合が選択される。
ノード集合の各ノードについて、bind
の残りの属性に従ってモデル項目特性が適用される。各属性(6.1 モデル項目特性の定義で定義される特性の一つにマッチする名前の)の文字列値が、同じ名前のモデル項目特性の局所値にコピーされる。
ノードが既に同じ名前のモデル項目特性を含んでいれば、包含文書のXForm処理は例外で停止する(4.5.1 xforms-binding-exceptionイベント)。
このmodel
要素に対して、xforms-rebuild
,、xforms-recalculate
、xforms-revalidate
を順に実行する。(xforms-refresh
は、利用者インタフェースがまだ初期化されていないので、実行されない。)
すべてのXFormsモデルが初期化された後、xforms-model-construct-done
イベントが各model
要素に送られる。
xforms-model-construct
処理の完了後送られる。
目標: model
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションは、XFormsモデルが包含文書にいくつ存在するかに関わらず一度発生し、それぞれのフォームコントロールについて次のような結果となる。
最初のフォームコントロールが処理される際、model
の中にinstance
が存在するかによって、処理は二つの相異なる方法のうちの一つへと進む。
最初のフォームコントロールが処理されたときに、フォームコントロールで参照されるinstance
が存在すれば、
束縛表現が存在するノードを指し示すことを保証していると評価される。もしそうでなければ、フォームコントロールはrelevant
モデル項目特性がfalse
と適切に解決されたモデル項目と束縛されているのと、同じように振舞うべきである。
最初のフォームコントロールが処理されたときに、フォームコントロールで参照されるinstance
が存在しなければ、
instance
への最初の参照に対して、デフォルトのinstance
が下に説明する方法に従って作成される。
instanceData
ルート要素が作成される。
インスタンスデータ要素のノードが、 利用者インタフェースコントロールから、name
として束縛表現を用いて作成される。もしname
が妥当なQNameでなければ、処理は例外で停止する(4.5.1 xforms-binding-exceptionイベント)。
自動的に作成されたinstance
への二番目以降の参照に対して、次の処理が実行される。
もしマッチするインスタンスデータのノードが見つかれば、利用者インタフェースコントロールはその要素と繋がる。
もしマッチするインスタンスデータのノードが見つからなければ、インスタンスデータのノードが、利用者インタフェースコントロールの束縛表現から、name
として作成される。もしname
が妥当なQNameでなければ、処理は例外で停止する(4.5.1 xforms-binding-exceptionイベント)。
全てのフォームコントロールが初期化された後、xforms-ready
イベントが各model
要素に送られる。
利用者が次又は前のフォームコントロールへナビゲーションさせようと要求するのに応答して送られる。
目標: フォームコントロール
バブル: しない
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、デフォルトのナビゲーション順序に従ったナビゲーションである。例えば、キーボードのインタフェースでは、"tab"がxforms-next
イベントを生成し、"shift+tab"がxforms-previous
イベントを生成する。
ナビゲーションは包含文書に基づいて決定される。ホスト言語は、全体のナビゲーション順序を定義する責任がある。ナビゲーション単位として個々のフォームコントロールを用いて、navindex
属性に基づいた可能な技術を説明しよう。<group
>、<repeat
>、及び<switch
>構造もまたナビゲーション単位としての機能を果たすが、単一のナビゲーション点を提供するのではなく、子供のフォームコントロール(及びありうる他の部分構造)の局所ナビゲーション文脈を作成する。ナビゲーション列は次のように定義される。
まず、navindex
が指定されて正の値が当てられているフォームコントロールがナビゲーションされる。
最外部のフォームコントロールは、navindex
の値の昇順でナビゲーションされる。値は連続している必要はなく、また特定の値で始まっている必要もない。同じnavindex
の値を持つフォームコントロールは、文書順序でナビゲーションされる。
祖先のフォームコントロール(<group
>、<repeat
>及び<switch
>)は、局所ナビゲーション列を生成する。局所列の中の全てのフォームコントロールは、局所列の外側のいずれのフォームコントロールがナビゲーションされるよりも前に、navindex
の値の昇順でナビゲーションされる。同じnavindex
の値を持つフォームコントロールは文書順序でナビゲーションされる。
navindex
が指定されていないか、又は値"0"が与えられているフォームコントロールは、次にナビゲーションされる。それらのフォームコントロールは、文書順序でナビゲーションされる。
無効にされたり、隠されたり、又relevant
でないとされたりしたフォームコントロールは、全体の列の中で相対的な順序を割り当てられるが、ナビゲーションできるコントロールとして加えられることはない。
最初のコントロールの後(や最初のコントロールの前)のナビゲーション列は未定義である。XForms処理系は、最初・最後のコントロールに循環させてもよいし、フォームからを取り除いてもよいし、又は他にできることをしてもよい。
フォームコントロールにフォーカスを置くのに応答して送られる。
目標: フォームコントロール
バブル: しない
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは次の通りである。
フォームコントロールがフォーカスを受け取ることができれば、フォーカスが目標フォームコントロールに与えられる。反復構造にフォーカスを置くと、反復インデックスで表される反復項目にフォーカスが置かれる。
利用者がヘルプ又はヒントの情報を要求するのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、もし、フォームコントロールにヘルプ・ヒント要素が与えられていれば、利用者に報告されるメッセージを構築するために用いられる。そうでなければ、利用者エージェントは、ヘルプ又はヒントメッセージを提供するかもしれないが、必須ではない。
特定のXFormsモデルに関連付けられた全てのフォームコントロールを更新する要求に応答して送られる。
目標: model
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、次の通りである。
全てのUI束縛は、必要に応じて再評価される。
ノードは(項4.3.6)又はsetvalue(項10.1.9)アクションにより利用者のフォームコントロールへの入力を確認することで、変化しうる。もしインスタンスデータのノードの値が変化していれば、ノードはxforms-value-changedイベントを送るべくマークされる。
xforms-value-changedイベントを送るべくにマークされていれば、適切なモデル項目特性通知イベントの全てが、送るべくマークされる(xforms-optional又はxforms-required、xforms-readwrite又はxforms-readonly、及びxforms-enabled又はxforms-disabled)。
それぞれのフォームコントロールに対して、束縛ノード上で送るべくマークされた各通知イベントが送られなければならない(xforms-value-changed、xforms-valid、xforms-invalid、xforms-optional、xforms-required、xforms-readwrite、xforms-readonly及びxforms-enabled、xforms-disabled)。通知イベントxforms-out-of-range又はxforms-in-rangeもまた適切に送られなければならない。この仕様書ではイベントの順序付けは明示しない。
利用者インタフェースは、モデルの状態を反映する。すなわち、全てのフォームコントロールが対応する次の束縛インスタンスデータに反映されるということである。
現在の値
妥当性
required
、readonly
又はrelevant
のいずれであるか
特定のXFormsモデルを再評価させようと要求するのに応答して送られる。
目標: model
バブル: する
中止: できる
文脈情報: なし
インスタンスのノードは、次の条件が満たされていれば、かつ満たされているときのみ、妥当である。
制約モデル項目特性が真である
ノードが適切なスキーマ定義を満たす(型モデル項目特性に関連付けられたものを含む)
注:
上の条件を満たすノードは、必須だが空であるときも妥当である。
このイベントに対するデフォルトのアクションは、以下の通りである。
model
の中の全instance
要素の中のインスタンスデータの全ノードが上の定義に従って妥当性を検査される。模試ノードの妥当性が変化すれば、ノードは、次のように、xforms-refreshの際、束縛するフォームコントロールに適切な通知イベント(xforms-valid又はxforms-invalid)を送るべくマークされる。
ノードが非妥当から妥当に変化すると、ノードはxforms-validイベントを送るべくマークされる。
ノードが妥当から非妥当に変化すると、ノードはxforms-invalidイベントを送るべくマークされる。
特定のXFormsモデルに関連付けられた全ての計算をやり直す要求に応答して送られる。
目標: model
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、次の通りである。
The values of all instance data items match their associated 'calculate' constraints, if any. All model item properties that can contain computed expressions are resolved. In addition to contributing further node value changes that will cause xforms-value-changed notifications in xforms-refresh, the model item properties that change are marked to help xforms-revalidate and xforms-refresh to determine the notification events to dispatch.
If the required model item property changes, then either the xforms-required event must be marked for dispatch if required is true or the xforms-optional event must be marked for dispatch if required is false.
If the readonly model item property changes, then either the xforms-readonly event must be marked for dispatch if readonly is true or the xforms-readwrite event must be marked for dispatch if readonly is false.
If the relevant model item property changes, then either the xforms-enabled event must be marked for dispatch if relevant is true or the xforms-disabled event must be marked for dispatch if relevant is false.
An XPath expression is bound either to the value or to a model item property
(e.g., required
, relevant
) of one or more instance nodes.
combination of an XPath expression with a single instance node's value or model item property
is considered as a single computational unit, a compute, for the
purposes of recalculation.
When it is time to recalculate a model item property, the
XPath expression is evaluated.
evaluation context is determined from the model binding expression
that applied the model item property, as defined for computed expressions in
7.4 Evaluation Context. XPath expression may reference or
refer to another instance node, in which case the value of the instance node is
referenced. Each referenced instance node has as dependents those
computes which directly refer to the instance node. References to the current node's value in
calculate
expressions are explicitly ignored, i.e., if an expression associated
with a compute refers to the instance node associated with the compute, then the instance node
does not take itself as a dependent. A compute is computationally dependent on an
instance node (whose value may or may not be computed) if there is a path of dependents leading
from the instance node through zero or more other instance nodes to the compute. A compute is
part of a circular dependency if it is computationally dependent on itself.
Note:
Authors should not refer to the current node's value in calculate
expressions
because the effect is not well-defined. Other model item properties, such as required
or
readonly
, however, are well-defined in the presence of self-references.
When a recalculation event begins, there will be a list L of one or more instance nodes whose values have been changed, e.g., by user input being propagated to the instance.
An XForms Processor should not recalculate computes that are not computationally dependent on one or more of the elements in L.
An XForms Processor should perform only a single recalculation of each compute that is computationally dependent on one or more of the elements in L.
An XForms Processor must recalculate a compute C after recalculating all computes of instance nodes on which C is computationally dependent. (Equivalently, an XForms Processor must recalculate a compute C before recalculating any compute that is computationally dependent on the instance node associated with C.)
Finally, if a compute is part of a circular dependency and also computationally dependent on an element in L, then an XForms processor must report an exception (4.5.4 xforms-compute-exceptionイベント).
D Recalculation Sequence Algorithm describes one possible method for achieving the desired recalculation behavior.
特定のXFormsモデル内の計算の依存関係を辿る内部データ構造を再構築する要求に応答して送られる。
目標: model
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、次の通りである。
このイベントに対するデフォルトのアクションは、計算の依存関係データ構造を再構築し、次にxforms-recalculate
イベントがモデルに送られたときに、完全な再計算が実行されるように、関連付けられた計算表現を持つ全インスタンスノードへの参照を、変化リストLが含むように設定される。
モデルをリセットさせようとする利用者の要求に応答して送られる。
目標: model
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションは、次の通りである。
インスタンスデータは、xforms-ready
イベントを処理した後すぐに、持っている木構造と値に初期化される。それから、xforms-rebuild
、xforms-recalculate
、xforms-revalidate
及びxforms-refresh
イベントが順にmodel
要素に送られる。
See chapter 11 Submit.
フォームコントロールに対する"デフォルトのアクション要求"、例えばボタンを押したりやエンターキーを叩いたりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できる
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
フォームコントロールに束縛されたインスタンスデータのノードの変化に応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、束縛されたインスタンスデータのノードが変化したことにより、このイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
注:
差分処理に関して、この仕様書は、どれだけの頻度でXForms処理系がこのイベントを発行するかを定義しない。実装は、処理を最適化するように期待される(例えば、各入力文字に対してスクリーン全体を消去しないなど)。
注:
このイベントに関連付けられたインスタンスデータの変化は、イベントが送られる前に発生している。
select
、select1
又はswitch
の中の項目が選択されたり選択を外されたりするのに応答して送られる
目標: item
又はitemset
又はcase
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
repeat
の範囲外のインデックスを設定しようとするsetindexアクションに応答して送られる。
目標: repeat
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
イベントハンドラが、XFormsアクションinsert
又はdelete
を呼び出し、反復項目の追加又は削除に成功したのに応答して送られる。
目標: instance
バブル: する
中止: できない
文脈情報: 挿入・削除に対して用いられるパス表現(xsd:string)。
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
インスタンスデータのノードが妥当なものへと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.5 xforms-revalidateイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードが妥当でないものへと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.5 xforms-revalidateイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
フォームコントロールがフォーカスを受け取るのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
フォームコントロールがフォーカスを失うのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
インスタンスデータのノードが読み取り専用に変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードが書き換え可能に変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードが必須へと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードがオプションへと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードが有効へと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードが無効へと変更されたり変化したりするのに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、4.3.6 xforms-recalculateイベント又は4.3.4 xforms-refreshイベントでこのイベントを送るようにマークされていれば、4.3.4 xforms-refreshイベントの際に送られる。
インスタンスデータのノードの値が変化して、値がフォームコントロールで表すことができるようになったことに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、フォームコントロールで指定された制約のために、表すことができないインスタンスデータのノードの値が、フォームコントロールで表すことができるように変化したときであれば、どんなときであっても送られる。
フォームコントロールで表すことができないように、インスタンスデータのノードの値が変化したことに応答して送られる。
目標: フォームコントロール
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
このイベントは、インスタンスデータのノードの値が、フォームコントロールで指定された制約のために表すことができなくなったときであれば、どんなときであっても送られる。
返ってきた文書の処理を含め、投稿処理が完了したことに応答して送られる。
目標: submission
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
11 投稿で定義されるように、投稿処理の失敗の報告として送られる。
目標: submission
バブル: する
中止: できない
文脈情報: 失敗した投稿方法のURI(xsd:anyURI)
このイベントに対するデフォルトのアクションはない。単なる通知イベントである。
エラー報告は、XForms処理系における異常な状況の結果として発生する。そのうちいくつかは"致命的"エラーとなり、処理を中断し、接尾辞"exception"を持つ。他のものは単に通知のためのものであり、接尾辞"error"を持つ。この項の全イベントに対して、XForms処理系は、例えばファイルにエラーメッセージを記録するというような、ある種のデフォルトの処理を実行することが許容される。
不正な束縛表現、すなわち、model
要素のIDを指し示すのに失敗したmodel
属性、又はbind
要素のIDを指し示すのに失敗したbind
属性、或いはsubmission
と同じmodel
要素内で、instance
要素を指し示すのに失敗したsubmission
要素上のinstance
属性の通知として送られる。
目標: 束縛表現を含むことができる任意の要素
バブル: する
中止: できない
文脈情報: なし
このイベントに対するデフォルトのアクションは、致命的エラーをもたらすことである。
リンク属性のリンクを辿るのに失敗したことの報告として送られる。
目標: model
バブル: する
中止: できない
文脈情報: ロードに失敗したURI (xsd:anyURI)
このイベントに対するデフォルトのアクションは、致命的エラーをもたらすことである。
前の項で、個々のイベントに関連付けられた処理を説明した。この項では、いくつかのありふれた状況で必ず起こる関連したイベント列の全体を与える。次のリストにおいて、二度以上発行されるかもしれないイベントは、接頭辞[n]が付く。
input
、secret
、textarea
、range
又はupload
コントロールに対してフォームコントロールが対話的に変更され、設定"incremental=true"を持つ場合、4.6.7 列: 値の変化で説明されているイベント列は、実装に依存した間隔で初期化される。
フォームコントロールが対話的に変更され、設定"incremental=true"を持っていない場合、イベントが送られる必要はないので、したがって列は定義されない。
フォーカスがそのフォームコントロールから変更され、値が変更されたとき、イベントの順序は4.6.7 列: 値の変化で説明される。
select
又はselect1
コントロールに対して選択が対話的に変更され、フォームコントロールが設定"incremental=true"を持つ場合、イベント列は4.6.6 列: 値の変化なしの選択で説明されており、直後に4.6.7 列: 値の変化で説明されていることが続いてもよい。
選択が対話的に変更され、フォームコントロールが設定"incremental=true"を持っていない場合、イベント列は4.6.6 列: 値の変化なしの選択で説明されている。
フォーカスがそのフォームコントロールから変更され、値が変更されていれば、イベント列は4.6.7 列: 値の変化で説明されている。
trigger
コントロールに対してフォームコントロールを活性化すると、4.6.8 列: トリガの活性化で定義されるイベント列が生じる。
submit
コントロールに対してフォームコントロールを活性化すると、4.6.8 列: トリガの活性化で定義されるイベント列が生じ、直後に4.6.9 列: 投稿で定義されるイベント列が続く。
xforms-recalculate
xforms-revalidate
xforms-refreshはUI束縛表現の再評価を実行し、値の変化、モデル項目特性の変化、妥当性の変化に従って次のイベントを送る。
[n] xforms-value-changed
[n] xforms-valid or xforms-invalid
[n] xforms-enabled or xforms-disabled
[n] xforms-optional or xforms-required
[n] xforms-readonly or xforms-readwrite
[n] xforms-out-of-range or xforms-in-range
(これらのイベントの送られる順序は定義されていない。)
さらに、必要に応じて、参照された更新を実行する
目次 | 上へ |