Issue 1685: OBV TypeCode problems (obv-rtf) Source: (, ) Nature: Uncategorized Issue Severity: Summary: Summary: For valuetypes that inherit from concrete valuetypes, the ORB::create_value_tc operation is insufficient. In particular, it does not allow the TypeCode for the base valuetype to be supplied. This means that if a valuetype with a concrete base valuetype is passed in an Any to a process that has no compile-time information concerning that valuetype, the receiving process will be unable to marshal it. Having the RepositoryId of the concrete base in the TypeCode does not solve the problem because the two processes might not have an Interface Repository (IFR) in common, or the concrete base RepositoryId may not be in the IFR known to the receiving process. Also, never in CORBA should unmarshaling require lookups in the IFR (this in fact should be an absolute ORB Core rule). Proposal: change create_value_tc to TypeCode create_value_tc( in RepositoryId id, in Identifier name, in boolean is_custom, in TypeCode concrete_base, in ValueMembersSeq members ); If the valuetype has no concrete valuetype base, the concrete_base argument shall be a nil TypeCode reference. Resolution: :create_value_tc operation is insufficient. In particular, it does not Revised Text: Actions taken: July 15, 1998: received issue February 24, 1999: closed issue Discussion: End of Annotations:===== Return-Path: From: Mike_Spreitzer.PARC@xerox.com X-NS-Transport-ID: 0000AA0033C10C1E38A5 Date: Tue, 14 Jul 1998 16:34:54 PDT Posted-Date: Tue, 14 Jul 98 16:43:13 PDT Subject: OBV issue - values are truncated by intermediaries To: obv-rtf@omg.org, issues@omg.org cc: Mike_Spreitzer.PARC@xerox.com I'm dismayed that the OBV design doesn't have a portable way for a value to pass through an intermediary that is less knowledgeable than the ultimate originator and ultimate consumer without losing information that is understood by both the ultimate originator and ultimate consumer. For examples, consider things like value-based event services, messaging services, and WWW proxying. Return-Path: Date: Wed, 15 Jul 1998 16:15:44 PDT Sender: Bill Janssen From: Bill Janssen To: obv-rtf@omg.org, issues@omg.org, Mike_Spreitzer.PARC@xerox.com Subject: Re: OBV issue - values are truncated by intermediaries CC: Mike_Spreitzer.PARC@xerox.com References: <98Jul15.032524pdt."61075(2)"@alpha.xerox.com> Excerpts from local.omg: 14-Jul-98 OBV issue - values are trun.. Mike_Spreitzer.PARC@xero (387) > I'm dismayed that the OBV design doesn't have a portable way for a value to > pass through an intermediary that is less knowledgeable than the ultimate > originator and ultimate consumer without losing information that is understood > by both the ultimate originator and ultimate consumer. For examples, consider > things like value-based event services, messaging services, and WWW proxying. Isn't that what `any' is for? Why re-invent the wheel? Bill Return-Path: Sender: jon@floorboard.com Date: Wed, 15 Jul 1998 17:30:45 -0700 From: Jonathan Biggar To: Bill Janssen CC: obv-rtf@omg.org, issues@omg.org, Mike_Spreitzer.PARC@xerox.com Subject: Re: OBV issue - values are truncated by intermediaries References: <98Jul15.032524pdt."61075(2)"@alpha.xerox.com> Bill Janssen wrote: > > Excerpts from local.omg: 14-Jul-98 OBV issue - values are trun.. > Mike_Spreitzer.PARC@xero (387) > > > I'm dismayed that the OBV design doesn't have a portable way for a > value to > > pass through an intermediary that is less knowledgeable than the > ultimate > > originator and ultimate consumer without losing information that > is understood > > by both the ultimate originator and ultimate consumer. For > examples, consider > > things like value-based event services, messaging services, and > WWW proxying. > > Isn't that what `any' is for? Why re-invent the wheel? Any doesn't help for bridges or firewalls. -- Jon Biggar Floorboard Software jon@floorboard.com jon@biggar.org Return-Path: From: Mike_Spreitzer.PARC@xerox.com X-NS-Transport-ID: 0000AA0033C10CDD38A5 Date: Thu, 16 Jul 1998 11:38:42 PDT Posted-Date: Thu, 16 Jul 98 11:44:27 PDT Subject: Re: OBV issue - values are truncated by intermediaries To: janssen@parc.xerox.COM cc: obv-rtf@omg.org, issues@omg.org, Mike_Spreitzer.PARC@xerox.com > Isn't that what `any' is for? Why re-invent the wheel? While there is an intuitive, gut-level sense in which "any" seems to be the right thing for this, there seem to be niggling little details that get in the way. The main one is that the receiver of an "any" has only an all-or-nothing choice: either he knows all about the type of the datum in the "any" and extracts it, or he doesn't. OBV's value types offer a new alternative here: the receiver can partially understand the datum in a "value", and get effective access to that part.