Issue 3315: Indirection for value types (interop) Source: Triodia Technologies Pty Ltd (Mr. Michi Henning, michi(at)triodia.com) Nature: Uncategorized Issue Severity: Summary: Section 15.3.4, page 15-18: The encoding used for indirection is the same as that used for recursive TypeCodes (i.e., a 0xffffffff indirection marker followed by a long offset (in units of octets) from the beginning of the long offset). [...] Indirections may refer to any preceding location in the GIOP message, including previous fragments if fragmentation is used. This includes any previously marshaled parameters. The beginning of the section ("is the same as that used for recursive TypeCodes") is in conflict with what appears at the end ("refer to any preceding location in the GIOP message [...]. This includes any previously marshaled parameters.") This is incorrect because the indirection for type codes does *not* permit indirections that span type code boundaries (page 15-27): The indirection applies only to TypeCodes nested within some "top-level" TypeCode. Indirected TypeCodes are not "freestanding," but only exist inside some other encoded TypeCode. I would suggest to rephrase the first part of what is on page 15-18 to avoid saying that the indirection is the same as for type codes because that's simply not the case. Resolution: close with revision Revised Text: In 15.3.4, change: " The encoding used for indirection is the same as that used for recursive TypeCodes (i.e., a 0xffffffff indirection marker followed by a long offset (in units of octets) from the beginning of the long offset). " to: " The encoding used to indicate an indirection is the same as that used for recursive TypeCodes (i.e., a 0xffffffff indirection marker followed by a long offset (in units of octets) from the beginning of the long offset). " Actions taken: February 11, 2000: received issue October 4, 2000: closed issue Discussion: End of Annotations:===== Date: Fri, 11 Feb 2000 12:11:41 +1000 (EST) From: Michi Henning Reply-To: interop@omg.org To: interop@omg.org cc: issues@omg.org Subject: Indirection for value types Message-ID: Organization: Object Oriented Concepts MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-UIDL: nM6!!D\Be991[d98PIe9 Hi, Section 15.3.4, page 15-18: The encoding used for indirection is the same as that used for recursive TypeCodes (i.e., a 0xffffffff indirection marker followed by a long offset (in units of octets) from the beginning of the long offset). [...] Indirections may refer to any preceding location in the GIOP message, including previous fragments if fragmentation is used. This includes any previously marshaled parameters. The beginning of the section ("is the same as that used for recursive TypeCodes") is in conflict with what appears at the end ("refer to any preceding location in the GIOP message [...]. This includes any previously marshaled parameters.") This is incorrect because the indirection for type codes does *not* permit indirections that span type code boundaries (page 15-27): The indirection applies only to TypeCodes nested within some "top-level" TypeCode. Indirected TypeCodes are not "freestanding," but only exist inside some other encoded TypeCode. I would suggest to rephrase the first part of what is on page 15-18 to avoid saying that the indirection is the same as for type codes because that's simply not the case. Cheers, Michi. -- Michi Henning +61 7 3891 5744 Object Oriented Concepts +61 4 1118 2700 (mobile) Suite 4, 904 Stanley St +61 7 3891 5009 (fax) East Brisbane 4169 michi@ooc.com.au AUSTRALIA http://www.ooc.com.au/staff/michi-henning.html Date: Mon, 01 May 2000 21:19:55 +0100 From: Simon Nash Organization: IBM X-Mailer: Mozilla 4.72 [en] (Windows NT 5.0; I) X-Accept-Language: en MIME-Version: 1.0 To: michi@ooc.com.au CC: interop@omg.org Subject: Re: issue 3315 -- Interop RTF issue References: <4.1.20000211112259.009a82a0@emerald.omg.org> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii X-UIDL: b@ld9)M`!!N[8e9(a(e9 Michi, I don't see any problem with the current text. The first paragraph says only that the on-the-wire encoding for valuetype indirections is the same as for TypeCode indirections, which is true. It then goes on to spell out in detail what this encoding is. It does not say, or imply, that all semantics of valuetype indirections as stated in subsequent paragraphs are identical to those of TypeCode indirections. Simon Juergen Boldt wrote: > > This is issue # 3315 > > Indirection for value types > > Section 15.3.4, page 15-18: > > The encoding used for indirection is the same as that used for > recursive TypeCodes (i.e., a 0xffffffff indirection marker > followed by a long offset (in units of octets) from the beginning > of the long offset). > > [...] > > Indirections may refer to any preceding location in the GIOP > message, including previous fragments if fragmentation is used. > This includes any previously marshaled parameters. > > The beginning of the section ("is the same as that used for recursive > TypeCodes") is in conflict with what appears at the end ("refer to any > preceding location in the GIOP message [...]. This includes any previously > marshaled parameters.") > > This is incorrect because the indirection for type codes does *not* permit > indirections that span type code boundaries (page 15-27): > > The indirection applies only to TypeCodes nested within > some "top-level" TypeCode. Indirected TypeCodes are not > "freestanding," but only exist inside some other encoded TypeCode. > > I would suggest to rephrase the first part of what is on page 15-18 > to avoid saying that the indirection is the same as for type codes > because that's simply not the case. > > ================================================================ > > Juergen Boldt > Senior Member of Technical Staff > > Object Management Group Tel. +1-781 444 0404 ext. 132 > 250 First Avenue, Suite 201 Fax: +1-781 444 0320 > Needham, MA 02494, USA Email: juergen@omg.org > > > ================================================================ -- Simon C Nash, Technology Architect, IBM Java Technology Centre Tel. +44-1962-815156 Fax +44-1962-818999 Hursley, England Internet: nash@hursley.ibm.com Lotus Notes: Simon Nash@ibmgb Date: Tue, 2 May 2000 20:50:30 +1000 (EST) From: Michi Henning To: Simon Nash cc: interop@omg.org Subject: Re: issue 3315 -- Interop RTF issue In-Reply-To: <390DE6EB.6EE5FBD5@hursley.ibm.com> Message-ID: Organization: Object Oriented Concepts MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-UIDL: fdL!!;b&!!XT6!!%*n!! On Mon, 1 May 2000, Simon Nash wrote: > Michi, > I don't see any problem with the current text. The first paragraph > says only > that the on-the-wire encoding for valuetype indirections is the same > as for > TypeCode indirections, which is true. It then goes on to spell out > in detail > what this encoding is. It does not say, or imply, that all > semantics of > valuetype indirections as stated in subsequent paragraphs are > identical to > those of TypeCode indirections. Hmmm. The exact words are: The encoding used for indirection is the same as that used for recursive TypeCodes (i.e., a 0xffffffff indirection marker followed by a long offset (in units of octets) from the beginning of the long offset). But the actual encoding for indirection isn't the same, because type codes impose semantic restrictions on the indirection that valuetypes don't. Reading this, I simply thought that this was misleading, which is why I raised the issue. A minor rewording here could improve things a little, I believe. Cheers, Michi. -- Michi Henning +61 7 3891 5744 Object Oriented Concepts +61 4 1118 2700 (mobile) Suite 4, 904 Stanley St +61 7 3891 5009 (fax) East Brisbane 4169 michi@ooc.com.au AUSTRALIA http://www.ooc.com.au/staff/michi-henning.html Date: Tue, 02 May 2000 21:25:18 +0100 From: Simon Nash Organization: IBM X-Mailer: Mozilla 4.72 [en] (Windows NT 5.0; I) X-Accept-Language: en MIME-Version: 1.0 To: Michi Henning CC: interop@omg.org Subject: Re: issue 3315 -- Interop RTF issue References: Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii X-UIDL: 5Q > On Mon, 1 May 2000, Simon Nash wrote: > > > Michi, > > I don't see any problem with the current text. The first paragraph says only > > that the on-the-wire encoding for valuetype indirections is the same as for > > TypeCode indirections, which is true. It then goes on to spell out in detail > > what this encoding is. It does not say, or imply, that all semantics of > > valuetype indirections as stated in subsequent paragraphs are identical to > > those of TypeCode indirections. > > Hmmm. The exact words are: > > The encoding used for indirection is the same as that used for > recursive TypeCodes (i.e., a 0xffffffff indirection marker > followed by a long offset (in units of octets) from the beginning > of the long offset). > > But the actual encoding for indirection isn't the same, because type codes > impose semantic restrictions on the indirection that valuetypes don't. > Reading this, I simply thought that this was misleading, which is why > I raised the issue. A minor rewording here could improve things a little, > I believe. > I see your point. I could be persuaded that "encoding" doesn't only cover the bit format but also includes any constraints on what values may be encoded in the bits. Any suggestions for better words? Simon -- Simon C Nash, Technology Architect, IBM Java Technology Centre Tel. +44-1962-815156 Fax +44-1962-818999 Hursley, England Internet: nash@hursley.ibm.com Lotus Notes: Simon Nash@ibmgb Date: Wed, 3 May 2000 11:19:54 +1000 (EST) From: Michi Henning To: Simon Nash cc: interop@omg.org Subject: Re: issue 3315 -- Interop RTF issue In-Reply-To: <390F39AE.990C51A9@hursley.ibm.com> Message-ID: Organization: Object Oriented Concepts MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-UIDL: b+p!!j I see your point. I could be persuaded that "encoding" doesn't only cover > the bit format but also includes any constraints on what values may be encoded > in the bits. Any suggestions for better words? I believe we voted on that issue already. Cheers, Michi. -- Michi Henning +61 7 3891 5744 Object Oriented Concepts +61 4 1118 2700 (mobile) Suite 4, 904 Stanley St +61 7 3891 5009 (fax) East Brisbane 4169 michi@ooc.com.au AUSTRALIA http://www.ooc.com.au/staff/michi-henning.html