Re: Clarification for ObjectReferenceVariabl

Wataru KAMEYAMA (wataru-k@ascii.co.jp)
Tue, 10 Mar 1998 19:22:13 +0900

Guido,

From: guido.grassel@research.nokia.com (Grassel Guido NRC/Hki)
Subject: Clarification for ObjectReferenceVariabl
Date: Tue, 10 Mar 1998 11:49:27 +0200

> {:Application
> ("orefvar0/startup" 0)
> :Items
> (
> {:ObjectRefVar
> 1
> :InitiallyActive true
> :Shared true
> :OrigValue :ObjectRef 100
> }
> {:ObjectRefVar
> 2
> :InitiallyActive true
> :Shared true
> :OrigValue :ObjectRef
> ("orefvar0/scene1" 100)
>
> // ....
>
> }
>
>
> {:Scene
> ("orefvar0/scene1" 0)
> :Items
> (
> {:Link
> 10
> :InitiallyActive true
> :Shared false
> :EventSource 0
> :EventType UserInput
> :EventData 15
> :LinkEffect
> (
> :TestVariable (("orefvar0/startup" 1) // target
> 1 // equal
> :GObjectRef ("orefvar0/startup" 2) // comparison value
> )
> }
>
> {:Link
> 11
> :InitiallyActive true
> :Shared false
> :EventSource 1
> :EventType TestEvent
> :EventData True
> :LinkEffect
> (
> // ...
> )
> }
> {:Link
> 12
> :InitiallyActive true
> :Shared false
>
> :EventSource 1
> :EventType TestEvent
> :EventData False
> :LinkEffect
> (
> // ...
> )
> }
> // ....
> }

First of all, you have mistakes in describing EventSource in Link 11
and 12. The EventSouces of these Links shall be ("orefvar0/startup"
1) rather than 1 which is to be interpreted as ("orefvar0/scene1" 1).

> I think the question comes down to asking, is it the scope in which the
> TestVaribale action gets executed, or the scope of the ObjectRefVaribale
> object which determins how the value of object 1 is interpreted, hence what
> does the object reference :ObjectRef 10 mean, ("orefvar0/startup" 100) or
> ("orefvar0/scene" 100)?
> I think this question is neither clarified in chapter 51 nor in chapter 21.

I remember this point was discussed some time ago during making IS (or
DIS?). ("orefvar0/startup" 1) is initialized within the scope of
"orefvar0/startup". Therefore, 100 shall be interpreted as "Reference
to an Ingredient of the Application group" which only allows omitting
GroupIdentifier within Application. Otherwise, you cannot omit it
according to the definition within section 51, II. So, I think the
description in section 51 is enough to clarify your query.

Consequently, the Link 12 shall be fired because ("orefvar0/startup"
1) holds ("orefvar0/startup" 100) and ("orefvar0/startup" 2) holds
("orefvar0/scene1" 100).

Regards,

** Wataru KAMEYAMA, Dr., ASCII Laboratories Inc., JAPAN
** TEL: +81 3 5351 9711
** FAX: +81 3 5351 9750
** wataru-k@ascii.co.jp ($B55;3!!>D!w%"%9%-!<L$Mh8&5f=j(B in KANJI)