RE: Problem with Enter States (renamed from W3C process)

On closer examination it turns out that the transition is, in fact, invalid.  Section 3.11 contains the following language describing the target of a transition (or value of 'initial'):  "1) no state is an ancestor of any other state on the list, ..."   I think that this is an acceptable solution because there are no real use cases for this kind of target and the problem can be detected statically.  I will try to modify the strict schemas to block this case.  If I can't do it, we can revisit the issue.


-          Jim

-
From: chris nuernberger [mailto:cnuernber@gmail.com]
Sent: Thursday, April 11, 2013 11:12 AM
To: Jim Barnett
Cc: VBWG Public (www-voice@w3.org)
Subject: Re: Problem with Enter States (renamed from W3C process)

I agree.  I confused the issue yesterday by thinking it was a problem with parallel but it has nothing to do with parallel; Jake's prompt to create a minimal test helped.

Chris

On Thu, Apr 11, 2013 at 9:04 AM, Jim Barnett <Jim.Barnett@genesyslab.com<mailto:Jim.Barnett@genesyslab.com>> wrote:
Ah yes, I see what you mean.  That is a valid transition and the algorithm won't handle it correctly.  I'll have to think about this a bit.  In addDescendentStatesToEnter I think we handle this case correctly for parallel states, because we check if any descendent is already on the list before adding each default entry child.  Your example shows that we may need to do this for compound states as well.    You're right that one way to do it would be to filter the targets, removing any that are ancestors of others.

I'll think about this a bit and send an update around.


-          Jim

From: chris nuernberger [mailto:cnuernber@gmail.com<mailto:cnuernber@gmail.com>]
Sent: Thursday, April 11, 2013 10:54 AM
To: VBWG Public (www-voice@w3.org<mailto:www-voice@w3.org>)
Subject: Problem with Enter States (renamed from W3C process)

Exactly the problem I talked about.  The transition itself isn't invalid.  The fix is easier than I thought; ensure that if a transition has multiple target that none of them derive from another one of them.  If such a condition does exist, take the most derived target.

Chris

--
A foolish consistency is the hobgoblin of little minds - Emerson



--
A foolish consistency is the hobgoblin of little minds - Emerson

Received on Thursday, 11 April 2013 17:51:10 UTC