So you say you want a revolution

Ed Barkmeyer edbark at cme.nist.gov
Fri Oct 26 11:23:00 EDT 2001


I wrote:
> The only entity types that can actually appear directly in an exchange 
> are the leaf types of the inheritance tree, and in those types, 
> every inherited generic attribute must be re-declared to a specific 
> Express:1994 data type.

Alan R Williams wrote:

> Isn't that only sort-of true?  In a Part 21 file, you could use the
> external form for complex entity instances.  In the partial for the
> abstract entity declaration, the attribute value needed would be generic,
> wouldn't it?

What I said was admittedly interpretable in two ways.  Alan chose the one I
didn't mean!  What I meant was: The only entity types that can actually
*be instantiated* in an exchange are the leaf types...

Alan is correct that in an external mapping, the *type names* of the abstract
supertypes will "appear directly" in partial entity instances.  (That is the 
other interpretation.)  And these partial entity instances will contain the 
slots for the erstwhile generic attributes.  But those attributes will have 
been redeclared somewhere in the type graph for the instance types.  So the
data type of the value that appears in each such slot can be deduced from the 
redeclarations in the schema, when you know what leaf types are represented 
in the complex entity instance.  The technical aspects of that were the 
subject of previous emails.

The conclusion, which Alan graciously copied, is the important aspect:
> So when you look at an instantiable exchange schema, all of those generic
> attributes disappear!

Actually they resolve to discriminated unions of their redeclarations, in
which the discriminators are the subtypes that contain the redeclarations,
or equivalently the instantiable leaf types (which must be, or inherit
from, those subtypes).

-Ed

-- 
Edward J. Barkmeyer                       Email: edbark at nist.gov
National Institute of Standards & Technology
Manufacturing Systems Integration Division
100 Bureau Drive, Mail Stop 8260          Tel: +1 301-975-3528
Gaithersburg, MD 20899-8260               FAX: +1 301-975-4482

"The opinions expressed above do not reflect consensus of NIST,
and have not been reviewed by any Government authority."



More information about the wg11 mailing list