Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1
  • 2

TOPIC: Size of templates

Size of templates 01 Jun 2007 18:46 #7141

Hi Gyorgy,



The reason is that it was unclear to me that AnyValue is permitted for
optional fields (somehow after so many years the details begin to blur :-)
), since using ? implies the presence of a valid value (for both mandatory
or optional fields).



What I know understand (thanks to Thomas, Ina, and yourself) is that
absence of a valid value simply results in a no-match of the event. :-) Â…



Perhaps an explicit statement to this effect would clarify the situation
even further. What do you think?



Can one really state (within the context of the TTCN-3 standard) that:
“Anything not explicitly forbidden is allowed”?







Thanks in advance.





Cheers,



Claude.





Blue Cactus Consulting phone: +49 (0)30 9606 7985

Edinburger Str. 39 fax: +49 (0)30 9606 7987

13349 Berlin mobile: +49 (0)174 701 6792

Germany email: This email address is being protected from spambots. You need JavaScript enabled to view it.



_____

From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of György Réthy (IJ/ETH)
Sent: 01 June 2007 16:24
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Claude,



I want to put it in the opposite way. Why do you think AnyValue is not
allowed for optional fields? If I look at Table 9, it is stated (see Note 1)
that AnyValueOrNone is allowed for optional fields only. But there is no
such restriction for AnyValue. If I look at clause B1.2.4, again, there is
an explicit limitation that * can be used for optional fields only; but
there is no similar limitation for ? in clause B1.2.3.





BR, Gyorgy




_____


From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude Desroches
Sent: Friday, 2007 June 01. 01:18 PM
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Ina,



Can you give me a reference where this is stated or implied.



There is an example provided in 15.1 Declaring message templates,



EXAMPLE 2: Template for receiving messages.

// Given the message definition

type record MyMessageType

{

integer field1 optional,

charstring field2,

boolean field3

}

// a message template might be

template MyMessageType MyTemplate:=

{

field1 := ?,

field2 := pattern "abc*xyz",

field3 := true

}

// and a corresponding receive operation could be

MyPCO.receive(MyTemplate);





The above example could be improved by adding (clarifying text) explicit
comments regarding the use of the ? for field1. Better yet, would be
explicit text related to the use of the ? in matching mechanisms.

E.g.



field1 will match as long as any integer value is present.



Value { 99, “abcxyz”, true } will match against MyTemplate

Value { “abcxyz”, true } will not match against MyTemplate. No
runtime error shall occur.









Thanks,



Claude.







Blue Cactus Consulting phone: +49 (0)30 9606 7985

Edinburger Str. 39 fax: +49 (0)30 9606 7987

13349 Berlin mobile: +49 (0)174 701 6792

Germany email: This email address is being protected from spambots. You need JavaScript enabled to view it.



Original Message
From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Schieferdecker, Ina
Sent: 01 June 2007 00:18
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Claude,



just one comment: ? is allowed for optional fields as you can take any

value for an optional field.



It is only that * is not allowed for mandatory fields.



Cheers, Ina.





>
Original Message

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude

> Desroches

> Sent: Wednesday, May 30, 2007 12:54 PM

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas,

>

>

>

>

>

> 1) Suggestion: Review all the built-in functions (and

> parameters) to verify correctness specifically when matching

> mechanisms are used.

>

>

>

>

>

> 2) Question regarding the use of '?' in matching mechanisms.

>

>

>

> Is using '?' valid if applied to a field which is optional? ( No)

>

>

>

> Have a look at example in B.1.2.3 Any value.

>

>

>

> // Given the message type definition

>

> type record MyMessageType

>

> {

>

> integer field1,

>

> charstring field2,

>

> boolean field3 optional,

>

> integer[4] field4

>

> }

>

>

>

> //

>

>

>

> EXAMPLE:

>

> template Mymessage MyTemplate:=

>

> {

>

> field1 := ?, // will match any integer

>

> field2 := ?, // will match any non-empty charstring value

>

> field3 := ?, // will match true or false

>

> field4 := ? // will match any sequence of integers

>

> }

>

>

>

> The above example is misleading as the template is invalid.

> The '?' is not permitted for fields which are

>

> Optional.

>

>

>

> Possible results:

>

> (a) compilation error.

> (preferred solution).

>

> (b) run-time error (error verdict) if the element is not

> present,

>

> (c) 'no-match' if the element is not present (with no

> run-time error). Not a desirable behaviour as it ignores

> the problem

>

>

>

> If I've understood correctly, (a) is the most CORRECT

> behaviour to expect, if the '?' is used in a template, for

> optional fields.

>

>

>

> According to the type definition field3 is optional.

> Although it is correct that '?' will match either true or

> false values, there is no

>

> Explanation of what happens if field3 is not present.

>

>

>

> Do you get a compilation error, runtime error, or a

> 'no-match'? Or is the user forced to accompany the field

> with an ifpresent()?

>

>

>

> Answer: even if the ifpresent() is there, it should still

> give at least a runtime error since ? requires the presence

> of a value.

>

> That is, adding the ifpresent is pointless... :-).

>

>

>

>

>

> 3) Can Any value be a record or must it be a 'basic'

> type such as boolean or integer?

>

>

>

>

>

> 4) B1.3.2 Any number of elements or no element

>

>

>

>

>

> Clarification:

>

>

>

> EXAMPLE:

>

> template Mymessage MyTemplate:=

>

> { :

>

> field2 := "abcxyz",

>

> field3 := '10*11'B, // where "*" may be any sequence of bits

> (possibly empty)

>

> field4 := {*, 2, 3} // where "*"may be any number of integer

> values or omitted

>

>

>

> The comment associated to field4 is misleading. The number

> of integer values permitted should not exceed the number of

>

> Elements specified by the type definition. That is, { 1, 4,

> 5, 6, 2, 3 } would cause a run-time error since a maximum of 4

>

> Integers are permitted based on the Mymessage type

> definition. The comment should be extended to make this

> point clear to

>

> Readers.

>

>

>

> I realize that it is not in the spirit of a standard to be a

> tutorial for a language, but such details are needed to

> ensure clarity from a usage and implementation point of view

> (however obvious it might seem to many).

>

>

>

> I think from a clarity point of view, new examples should be

> added specifically for those cases, where it is unclear what

> the expected result is.

>

>

>

>

>

>

>

> Cheers,

>

>

>

> Claude.

>

>

>

> PS: Any operation which leads to an undefined result (

> suchas sizeof ( { *} ) should force either a compilation

> error where possible and a runtime 'error' verdict at the least.

>

>

>

>

>

>

>

> ________________________________

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Thomas Deiss

> Sent: 29 May 2007 11:45

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hello Claude and Stefan,

>

>

>

> Thanks for your answers. I take them as indications that the

> sizeof function is not defined for all of its parameters and

> that applying it so some templates could lead to either

> runtime errors or errors at compile time. Actually, that's

> what I feared: Another partial builtin function and no

> possibility to check whether the argument is within the

> domain of the function.

>

>

>

> I'll have a closer look at the situation and prepare a CR if needed.

>

>

>

> Btw:: I suggest that sizeof( R:{?} ) evaluates to 1.

>

>

>

>

>

>

>

> Best regards

>

>

>

> Thomas

>

>

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of ext

> Claude Desroches

> Sent: Saturday, 26. May 2007 10:50

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas,

>

>

>

>

>

> Some suggestions:

>

>

>

> 1) At compilation time a WARNING or ERROR message

> should be displayed since the value "*" can be zero up to infinity.

>

> 2) At runtime, use the currently received message

> matched against the constraint to determine the value to be

> returned by

>

> Sizeof. If the received message contains 20 integer,

> then return value 20, if none, then 0, etc.

>

> 3) return a TTCN-3 error verdict with the

> offending line number in the TTCN-3 code where the error occurs.

>

>

>

> Look a C.29 and C30 of ES20187301.

>

>

>

> C.30 indicates that an error occurs in the case where a

> record of integer xxx is used with the sizeoftype since there

> is no length constraint.

>

>

>

> Since the type you use is unconstrained from a

> length/number of elements point of view, it would make sense to cause

>

> A runtime error for a template of this type. Of

> course, specifying any other value than "*", would likely work.

>

>

>

> Consider the following:

>

>

>

> template R a_r2 := { 1, 2, * , 3, *, 9 };

>

>

>

> What should sizeof return here? It is impossible to

> determine the value here since "*" means 0 to infinity.

>

> I would say applying a sizeof operation on any template

> containing a "*" must cause either a static compilation

> error, or at a minimum a runtime error (which is less desirable).

>

>

>

>

>

> Now to put some more "salt into the wound", what

> happens with this:

>

>

>

>

>

> template R a_r3 := { ? } // what is returned here?

> // 1 or something else.

>

>

>

>

>

> Cheers,

>

>

>

> Claude.

>

>

>

>

>

>

>

>

>

>

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Qelthin, Stefan

> Sent: 26 May 2007 10:14

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas!

>

>

>

> Since the size is undefined or "any"-size the nicest

> theoritical value to be displayed would be "*". From an

> implementation and usage standpoint that would be a bit hard

> to use I guess... ;-) so I would go for the runtime error.

> Can't find it in the std so I guess it is up for discussion.

>

>

>

> BR

>

>

>

> /Stefan

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Thomas Deiss

> Sent: den 25 maj 2007 16:49

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Size of templates

>

> Hello together,

>

> TTCN-3 allows to use the sizeof function to compute the

> size of a template. Assume the following definitions

>

> type record of integer R;

> template R a_r := {*};

>

> What will be the result of evalating sizeof(a_r), will

> it be 0, 1, or runtime error? Any ideas?

>

> Best regards

>

> Thomas

>

>
The administrator has disabled public write access.

Size of templates 04 Jun 2007 08:56 #7142

Hi Claude,

See in-line.

Have a nice day, Gyorgy


________________________________

From: active_ttcn3 : mts stf133 ttcn version 3 - active members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude Desroches
Sent: Friday, 2007 June 01. 08:47 PM
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates





Hi Gyorgy,



The reason is that it was unclear to me that AnyValue is permitted for optional fields (somehow after so many years the details begin to blur :-) ), since using ? implies the presence of a valid value (for both mandatory or optional fields).
[György Réthy (IJ/ETH)] Yes, in the received message. The template just signals what you are willing to accept in the given receiving operation.





What I know understand (thanks to Thomas, Ina, and yourself) is that absence of a valid value simply results in a no-match of the event. :-) ...
[György Réthy (IJ/ETH)] Correct.



Perhaps an explicit statement to this effect would clarify the situation even further. What do you think?
[György Réthy (IJ/ETH)] That this would be dangerous. It is impossible to cover all "positive" cases, at least would require years and the TTCN-3 standard would become of unmanagable size. And if something is forgotten, users could think that it is not allowed because it is not listed as allowed.



Can one really state (within the context of the TTCN-3 standard) that: "Anything not explicitly forbidden is allowed"?
[György Réthy (IJ/ETH)] To me "not forbidden" means "allowed". But, again, what "explicitly" would mean in such a statement? There are cases, when the restriction is implicit (e.g. using global templates in expressions). It is not good, but if including the above statement into the standard, we would unintentionally change the semantics. It is better to discover and correct such cases one-by-one.







Thanks in advance.





Cheers,



Claude.





Blue Cactus Consulting phone: +49 (0)30 9606 7985

Edinburger Str. 39 fax: +49 (0)30 9606 7987

13349 Berlin mobile: +49 (0)174 701 6792

Germany email: This email address is being protected from spambots. You need JavaScript enabled to view it.




________________________________


From: active_ttcn3 : mts stf133 ttcn version 3 - active members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of György Réthy (IJ/ETH)
Sent: 01 June 2007 16:24
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Claude,



I want to put it in the opposite way. Why do you think AnyValue is not allowed for optional fields? If I look at Table 9, it is stated (see Note 1) that AnyValueOrNone is allowed for optional fields only. But there is no such restriction for AnyValue. If I look at clause B1.2.4, again, there is an explicit limitation that * can be used for optional fields only; but there is no similar limitation for ? in clause B1.2.3.





BR, Gyorgy




________________________________


From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude Desroches
Sent: Friday, 2007 June 01. 01:18 PM
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Ina,



Can you give me a reference where this is stated or implied.



There is an example provided in 15.1 Declaring message templates,



EXAMPLE 2: Template for receiving messages.

// Given the message definition

type record MyMessageType

{

integer field1 optional,

charstring field2,

boolean field3

}

// a message template might be

template MyMessageType MyTemplate:=

{

field1 := ?,

field2 := pattern "abc*xyz",

field3 := true

}

// and a corresponding receive operation could be

MyPCO.receive(MyTemplate);





The above example could be improved by adding (clarifying text) explicit comments regarding the use of the ? for field1. Better yet, would be explicit text related to the use of the ? in matching mechanisms.

E.g.



field1 will match as long as any integer value is present.



Value { 99, "abcxyz", true } will match against MyTemplate

Value { "abcxyz", true } will not match against MyTemplate.
No runtime error shall occur.









Thanks,



Claude.







Blue Cactus Consulting phone: +49 (0)30 9606 7985

Edinburger Str. 39 fax: +49 (0)30 9606 7987

13349 Berlin mobile: +49 (0)174 701 6792

Germany email: This email address is being protected from spambots. You need JavaScript enabled to view it.



Original Message
From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Schieferdecker, Ina
Sent: 01 June 2007 00:18
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates



Hi Claude,



just one comment: ? is allowed for optional fields as you can take
any

value for an optional field.



It is only that * is not allowed for mandatory fields.



Cheers, Ina.





>
Original Message

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude

> Desroches

> Sent: Wednesday, May 30, 2007 12:54 PM

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas,

>

>

>

>

>

> 1) Suggestion: Review all the built-in functions (and

> parameters) to verify correctness specifically when matching

> mechanisms are used.

>

>

>

>

>

> 2) Question regarding the use of '?' in matching mechanisms.

>

>

>

> Is using '?' valid if applied to a field which is optional? (
No)

>

>

>

> Have a look at example in B.1.2.3 Any value.

>

>

>

> // Given the message type definition

>

> type record MyMessageType

>

> {

>

> integer field1,

>

> charstring field2,

>

> boolean field3 optional,

>

> integer[4] field4

>

> }

>

>

>

> //

>

>

>

> EXAMPLE:

>

> template Mymessage MyTemplate:=

>

> {

>

> field1 := ?, // will match any integer

>

> field2 := ?, // will match any non-empty charstring value

>

> field3 := ?, // will match true or false

>

> field4 := ? // will match any sequence of integers

>

> }

>

>

>

> The above example is misleading as the template is invalid.

> The '?' is not permitted for fields which are

>

> Optional.

>

>

>

> Possible results:

>

> (a) compilation error.

> (preferred solution).

>

> (b) run-time error (error verdict) if the element is not

> present,

>

> (c) 'no-match' if the element is not present (with no

> run-time error). Not a desirable behaviour as it ignores

> the problem

>

>

>

> If I've understood correctly, (a) is the most CORRECT

> behaviour to expect, if the '?' is used in a template, for

> optional fields.

>

>

>

> According to the type definition field3 is optional.

> Although it is correct that '?' will match either true or

> false values, there is no

>

> Explanation of what happens if field3 is not present.

>

>

>

> Do you get a compilation error, runtime error, or a

> 'no-match'? Or is the user forced to accompany the field

> with an ifpresent()?

>

>

>

> Answer: even if the ifpresent() is there, it should still

> give at least a runtime error since ? requires the presence

> of a value.

>

> That is, adding the ifpresent is pointless... :-).

>

>

>

>

>

> 3) Can Any value be a record or must it be a 'basic'

> type such as boolean or integer?

>

>

>

>

>

> 4) B1.3.2 Any number of elements or no element

>

>

>

>

>

> Clarification:

>

>

>

> EXAMPLE:

>

> template Mymessage MyTemplate:=

>

> { :

>

> field2 := "abcxyz",

>

> field3 := '10*11'B, // where "*" may be any sequence of bits

> (possibly empty)

>

> field4 := {*, 2, 3} // where "*"may be any number of integer

> values or omitted

>

>

>

> The comment associated to field4 is misleading. The number

> of integer values permitted should not exceed the number of

>

> Elements specified by the type definition. That is, { 1, 4,

> 5, 6, 2, 3 } would cause a run-time error since a maximum of 4

>

> Integers are permitted based on the Mymessage type

> definition. The comment should be extended to make this

> point clear to

>

> Readers.

>

>

>

> I realize that it is not in the spirit of a standard to be a

> tutorial for a language, but such details are needed to

> ensure clarity from a usage and implementation point of view

> (however obvious it might seem to many).

>

>

>

> I think from a clarity point of view, new examples should be

> added specifically for those cases, where it is unclear what

> the expected result is.

>

>

>

>

>

>

>

> Cheers,

>

>

>

> Claude.

>

>

>

> PS: Any operation which leads to an undefined result (

> suchas sizeof ( { *} ) should force either a compilation

> error where possible and a runtime 'error' verdict at the
least.

>

>

>

>

>

>

>

> ________________________________

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Thomas
Deiss

> Sent: 29 May 2007 11:45

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hello Claude and Stefan,

>

>

>

> Thanks for your answers. I take them as indications that the

> sizeof function is not defined for all of its parameters and

> that applying it so some templates could lead to either

> runtime errors or errors at compile time. Actually, that's

> what I feared: Another partial builtin function and no

> possibility to check whether the argument is within the

> domain of the function.

>

>

>

> I'll have a closer look at the situation and prepare a CR if
needed.

>

>

>

> Btw:: I suggest that sizeof( R:{?} ) evaluates to 1.

>

>

>

>

>

>

>

> Best regards

>

>

>

> Thomas

>

>

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of ext

> Claude Desroches

> Sent: Saturday, 26. May 2007 10:50

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas,

>

>

>

>

>

> Some suggestions:

>

>

>

> 1) At compilation time a WARNING or ERROR message

> should be displayed since the value "*" can be zero up to
infinity.

>

> 2) At runtime, use the currently received message

> matched against the constraint to determine the value to be

> returned by

>

> Sizeof. If the received message contains 20 integer,

> then return value 20, if none, then 0, etc.

>

> 3) return a TTCN-3 error verdict with the

> offending line number in the TTCN-3 code where the error occurs.

>

>

>

> Look a C.29 and C30 of ES20187301.

>

>

>

> C.30 indicates that an error occurs in the case where a

> record of integer xxx is used with the sizeoftype since there

> is no length constraint.

>

>

>

> Since the type you use is unconstrained from a

> length/number of elements point of view, it would make sense to cause

>

> A runtime error for a template of this type. Of

> course, specifying any other value than "*", would likely work.

>

>

>

> Consider the following:

>

>

>

> template R a_r2 := { 1, 2, * , 3, *, 9 };

>

>

>

> What should sizeof return here? It is impossible to

> determine the value here since "*" means 0 to infinity.

>

> I would say applying a sizeof operation on any template

> containing a "*" must cause either a static compilation

> error, or at a minimum a runtime error (which is less desirable).

>

>

>

>

>

> Now to put some more "salt into the wound", what

> happens with this:

>

>

>

>

>

> template R a_r3 := { ? } // what is returned here?

> // 1 or something else.

>

>

>

>

>

> Cheers,

>

>

>

> Claude.

>

>

>

>

>

>

>

>

>

>

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Qelthin, Stefan

> Sent: 26 May 2007 10:14

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Re: Size of templates

>

>

>

> Hi Thomas!

>

>

>

> Since the size is undefined or "any"-size the nicest

> theoritical value to be displayed would be "*". From an

> implementation and usage standpoint that would be a bit hard

> to use I guess... ;-) so I would go for the runtime error.

> Can't find it in the std so I guess it is up for discussion.

>

>

>

> BR

>

>

>

> /Stefan

>

>

>

>

> ________________________________

>

>

> From: active_ttcn3 : mts stf133 ttcn version 3 - active

> members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Thomas
Deiss

> Sent: den 25 maj 2007 16:49

> To: This email address is being protected from spambots. You need JavaScript enabled to view it.

> Subject: Size of templates

>

> Hello together,

>

> TTCN-3 allows to use the sizeof function to compute the

> size of a template. Assume the following definitions

>

> type record of integer R;

> template R a_r := {*};

>

> What will be the result of evalating sizeof(a_r), will

> it be 0, 1, or runtime error? Any ideas?

>

> Best regards

>

> Thomas

>

>
The administrator has disabled public write access.

Size of templates 04 Jun 2007 11:25 #7143

Hello together,

thanks to all of you who helped to clarify this issue.
I have filed a CR such that the standard can be made more clear.

Best regards

Thomas


________________________________

From: active_ttcn3 : mts stf133 ttcn version 3 - active members only [This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of ext György Réthy (IJ/ETH)
Sent: Monday, 04. June 2007 10:56
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates


Hi Claude,

See in-line.

Have a nice day, Gyorgy


________________________________

From: active_ttcn3 : mts stf133 ttcn version 3 - active members only
[This email address is being protected from spambots. You need JavaScript enabled to view it.] On Behalf Of Claude Desroches
Sent: Friday, 2007 June 01. 08:47 PM
To: This email address is being protected from spambots. You need JavaScript enabled to view it.
Subject: Re: Size of templates





Hi Gyorgy,



The reason is that it was unclear to me that AnyValue is permitted
for optional fields (somehow after so many years the details begin to blur :-) ), since using ? implies the presence of a valid value (for both mandatory or optional fields).
[György Réthy (IJ/ETH)] Yes, in the received message. The
template just signals what you are willing to accept in the given receiving operation.





What I know understand (thanks to Thomas, Ina, and yourself) is
that absence of a valid value simply results in a no-match of the event. :-) ...
[György Réthy (IJ/ETH)] Correct.



Perhaps an explicit statement to this effect would clarify the situation even further. What do you think?
[György Réthy (IJ/ETH)] That this would be dangerous. It is impossible to cover all "positive" cases, at least would require years and the TTCN-3 standard would become of unmanagable size. And if something is forgotten, users could think that it is not allowed because it is not listed as allowed.



Can one really state (within the context of the TTCN-3 standard)
that: "Anything not explicitly forbidden is allowed"?
[György Réthy (IJ/ETH)] To me "not forbidden" means "allowed".
But, again, what "explicitly" would mean in such a statement? There are cases, when the restriction is implicit (e.g. using global templates in expressions). It is not good, but if including the above statement into the standard, we would unintentionally change the semantics. It is better to discover and correct such cases one-by-one.







Thanks in advance.





<--- snip, TD --->
The administrator has disabled public write access.
  • Page:
  • 1
  • 2

FacebookTwitterGoogle BookmarksRedditNewsvineTechnoratiLinkedin