13. Background and References

OODBTG Reference Model

X3/SPARC/DBSSG/OODB Task Group was commissioned in 1989 to characterizeOODB systems and determine a roadmap for standards in the OODB area. Itsfinal report was completed in September, 1991. As part of its referencemodel characterizing OODBs, a stand alone section was written that defines"General Characteristics of Object Models." Material from thischapter is included in this features matrix.

The document reference is:

"General Characteristics of Object Models," section 3.2 in:Bill Kent, Allen Otis, Craig Thompson (editors), "Object Data ManagementReference Model", section 3 in: Elizabeth Fong, William Kent, KenMoore, and Craig Thompson (editors). "X3/SPARC/DBSSG/OODBTG FinalReport," 17 September, 1991. Available from NIST (Elizabeth Fong atFONG@ECF.NCSL.NIST.GOV)

OMG Core Object Model

This text comes from chapter 4 of Richard Mark Soley, Ph.D. (ed.), ObjectManagement Architecture Guide, Revision 2.0, Second Edition, OMG TCDocument 92.11.1, Object Management Group, September 1, 1992.


[CORBA Specification} The Common Object Request Broker: Architectureand Specification, Revision 1.1. Object Management Group, 1992.


The Object Database Management Group (ODMG) was initiated in late 1991to address the belief that lack of standards for object databases has hinderedtheir acceptance. The group wanted to progress quickly, thus they keptthemselves small (originally 5 voting members) and insisted that membersrepresent their companies as individuals; substitute representatives arenot allowed. Release 1.0 of the standard was published a little over ayear later in 1993.

As of February 1994, the group has seven voting member companies anda number of reviewer companies. The voting member companies and most ofthe reviewer member companies have committed to supporting the standardby 1995.

[Cat94] R.G.G. Cattell, editor, The Object Database Standard: ODMG-93,Release 1.1, Morgan Kaufmann Publishers, San Francisco, 1994.

Information about the ODMG can be obtained by mail to info@odmg.org;questions can be addressed to question@odmg.org.


EXPRESS is a conceptual schema language. It is defined specificallyto deal with the information that is consumed or produced during productmanufacturing. EXPRESS is not a programming language. It does not containlanguage elements which allow input/output, information processing or exceptionhandling. EXPRESS focuses on the definition of entities consisting of dataand behavior. Data represents the properties by which an entity is realizedand behavior is represented by constraints and operations.


ISO/DIS 10303-11 Industrial automation systems and integration - Productdata representation and exchange - Part 11: Description methods: The EXPRESSlanguage reference manual, July 15, 1992. (or, ISO 10303-11, date: to bepublished. The IS ballot has completed; final editing of the Standard isin process.)

ISO/CD 10303-22 Industrial automation systems and integration - Productdata representation and exchange - Part 22: Implementation methods: Standarddata access interface specification, November 1, 1993.

Open Distributed Processing

ODP or Open Distributed Processing and specifically the Reference Modelfor ODP (RM-ODP) contains its own model for objects to support the ODPconcepts.


[Part 1] ISO/IEC 10746-1. Information Technology - Open DistributedProcessing - Basic Reference Model of Open Distributed Processing - Part1: Overview and Guide to Use. (ISO/IEC JTC1/SC21 N 7053, September 1992).

[Part 2] ISO/IEC JTC1/SC21/WG7, Basic Reference Model of Open DistributedProcessing - Part 2: Descriptive Model. (CD 10746-2.3, June 1993).

[Part 3] ISO/IEC 10746-3. Information Technology - Open DistributedProcessing - Basic Reference Model of Open Distributed Processing - Part3: Prescriptive Model. (ISO/IEC JTC1/SC21 N 7055, September 1992).

[Part 4] ISO/IEC 10746-5. Information Technology - Open DistributedProcessing - Basic Reference Model of Open Distributed Processing - Part4: Architectural Semantics. (ISO/IEC JTC1/SC21 N 7056, September 1992).

Management Information Model


NOTE: Most of the text is abstracted from [ISO/IEC 10165-1, MIM] and[ISO/IEC CD 10165-7, GRM].

[CCITT X.208, ASN.1] CCITT Recommendation X.208 (1989) | ISO/IEC 8824: 1990, Information Technology - Open Systems Interconnection -Specificationof Abstract Syntax Notation One (ASN.1).

[CCITT X.209, BER] CCITT Recommendation X.208 (1989) | ISO/IEC 8824: 1990, Information Technology - Open Systems Interconnection -Specificationof Basic Encoding Rules For Abstract Syntax Notation One (ASN.1).

[ISO/IEC 9595] ISO/IEC 9595, Information Technology - Open Systems Interconnection- Common Management Information Service Definition.

[ISO/IEC 9596-1] ISO/IEC 9596-1, Information Technology - Open SystemsInterconnection - Common Management Information Protocol: Specification.

[ISO/IEC 10040, SMO] CCITT Recommendation X.701 (1992) | ISO/IEC 10040: 1992, Information Technology - Open Systems Interconnection - SystemsManagement Overview.

[ISO/IEC 10164-2] CCITT Recommendation X.731 | ISO/IEC 10164-2, InformationTechnology - Open Systems Interconnection - Systems Management - Part 2:State Management Function.

[ISO/IEC CD 10164-16, MKMF] CCITT Draft Recommendation X.xxx | ISO/IECCD10164-16, Information Technology - Open Systems Interconnection - SystemsManagement - Part 16: Management Knowledge Management Function.

[Part 1] or [ISO/IEC 10165-1, MIM] CCITT Recommendation X.720 (1991)| ISO/IEC 10165-1 : 1991, Information Technology - Open Systems Interconnection- Structure of Management Information - Part 1: Management InformationModel.

[Part 4] or [ISO/IEC 10165-4, GDMO] CCITT Recommendation X.722 (1992)| ISO/IEC 10165-4 : 1992, Information Technology - Open Systems Interconnection- Structure of Information - Part 4: Guidelines for the Definition of ManagedObjects.

[GRM 93] or [ISO/IEC CD 10165-7, GRM] CCITT Draft Recommendation X.xxx| ISO/IEC CD 10165-7, Information Technology - Open Systems Interconnection- Structure of Management Information - Part 7: General Relationship Model

[X3T5/93-324] ANSI X3T5. US Comments on ISO/IEC CD 10165-7.2 GeneralRelationship Model. (Authors: Haim Kilov, Laura S. Redmann).X3T5/93-324,December 3, 1993.

[SMI Rapporteur Group 93] ISO/IEC JTC1/SC21. Open Systems Interconnection,Data Management and Open Distributed Processing. Liaison Statement to ITU-TSSG7 on FDT Use of Specifying Managed Object Behavior. ISO/IEC JTC1/SC21N 7981. August 9, 1993.


[Gal92] Leonard Gallagher, "Object SQL: Language Extensions forObject Data Management", Proc. Intl. Conf. on Knowledge and InformationMgmt. (CIKM-92), Baltimore, MD, November 1992. ftp://speckle.ncsl.nist.gov/isowg3/dbl/BASEdocs/descriptions/sql3overview.txt

[ISO96a] ISO/IEC JTC1/SC21 N10489, ISO//IEC 9075, Part 2, CommitteeDraft (CD), Database Language SQL -Part 2: SQL/Foundation, July 1996. ftp://speckle.ncsl.nist.gov/isowg3/dbl/BASEdocs/cd-found.pdf

[ISO96b] ISO/IEC JTC1/SC21 N10491, ISO//IEC 9075, Part 8, CommitteeDraft (CD), Database Language SQL -Part 8: SQL/Object, July 1996. ftp://speckle.ncsl.nist.gov/isowg3/dbl/BASEdocs/cd-objct.pdf

[KCDM+95] Krishna Kultarni, Mike Carey, Linda DeMichiel, Nelson Mattos,Wei Hong, and Mike Ubell, "Introducing Reference Types and CleaningUp SQL3's Object Model", SQL3 Change Proposal X3H2-95-456, November26, 1995.

[KCS94] William Kelley, Amelia Carlson, Phil Shaw, personal communication,August 1994.

[Kul93] Krishna G. Kulkarni, "Object-Orientation and the SQL Standard",Computer Standards & Interfaces 15 (1993), 287-300.

[Mat96] Nelson Mattos, "An Overview of the SQL3 Standard",presentation foils, Database Technology Institute, IBM Santa Teresa Lab.,San Jose, CA, July 1996, ftp://speckle.ncsl.nist.gov/isowg3/dbl/BASEdocs/descriptions/SQL3_foils.ps.

[MS93] Jim Melton and Alan R. Simon, Understanding the New SQL: AComplete Guide, Morgan Kaufmann, San Francisco, 1993.


[1] Atkinson, M. et al. The Object-Oriented Database Systems Manifesto.In Deductive and Object-Oriented Databases. Elsevier Science Publishers,1990.

[2] Committee for Advanced DBMS Function (Stonebraker, M., et al.).Third Generation Database System Manifesto. ACM SIGMOD Record, Sep 1990.

[3] Tischritzis, Dennis, Klug, Anthony . The ANSI/X3/SPARC DBMS FrameworkReport of the Study Group on Database Management. Information Systems3:173-191, 1978.

[4] LeLong, Philippe, Moller, Pierre. MATISSE Product Overview.Intellitic International, Inc. 1993.

[5] Sutherland, Jeff. Dialogue on Objects and SQL3, Meeting Notes, 14-16April 1993, Palo Alto, CA. X3H7-93-057.

[6] Khoshafian, Setrag N., Copeland, George P. Object Identity. In ReadingsIn Object-Oriented Database Systems. Zdonik, S.B., Maier, D. (Eds.)San Mateo, Morgan Kaufmann, 1990.

[7] Kiczales, G., des Rivieres, J., and Bobrow, D. The Art of theMetaobject Protocol. Cambridge: MIT Press, 1991.


[Cli93] Marshall Cline, Frequently-Asked-Questions for comp.lang.c++,September, 1993.

[Cook90] Stephen Cook, "Programming Languages Based on Objects",in G. Blair, J. Gallagher, D. Hutchison, and D. Shepherd (eds.), Object-OrientedLanguages, Systems, and Applications, unpublished manuscript, 1990.

[CM93] S. Chiba and T. Masuda, "Designing an Extensible DistributedLanguage with a Meta-Level Architecture", in O. Nierstrasz, ed., ProceedingsECOOP '93, Lecture Notes in Computer Science 707, Springer-Verlag,July 1993, 483-502.

[Ste94] A. Stevens, "Patterns, New C++ Features, and OS/2",Dr. Dobb's Journal, Sept. 1994, 107-111.

[Str92] Bjarne Stroustrup, The C++ Programming Language, Second Edition,Addison-Wesley, 1992.

[Wes90] Dan Weston, Elements of C++ Macintosh Programming, Addison-Wesley,1990.


[Obi94] Document X3J4/94-0191 (X3H7-94-10), Object Orientation, RaymondObin, 22 February, 1994.

[Top94] Andrew Topper, "Object-Oriented COBOL Standard", ObjectMagazine 3(6), February 1994, 39-41.


[GR83] Adele Goldberg and D. Robson, Smalltalk-80: The Language andIts Implementation, Addison-Wesley, 1983.

[IBM92] Smalltalk Portability: A Common Base, Document NumberGG24-3903, IBM Corporation, International Technical Support Center, BocaRaton, September 1992.


1. Meyer, Bertrand, Eiffel: The Language (Reprinted with corrections),Prentice-Hall Object-oriented Series, 1992.

2. Meyer, Bertrand, Object-oriented Software Construction, Prentice-Hall,1988.

3. Meyer, Bertrand, Reusable Software: The Base Object-Oriented ComponentLibraries, 1994, Prentice-Hall Object-Oriented Series.


Emerald is not a particularly widely-used programming language. However,many concepts associated with Emerald, such as conformity, have had considerableinfluence in object-oriented language and system designs.

[BHJL86] A. Black, N. Hutchinson, E. Jul, and H. Levy, "ObjectStructure in the Emerald System", in N. Meyrowitz, ed., OOPSLA'86 Conference Proceedings, ACM, Sept., 1986, published as SIGPLANNotices, 21(11), Nov., 1986.

[BH90] A. Black and N. Hutchinson, "Typechecking Polymorphism inEmerald", Technical Report CRL 91/1, Cambridge Research Laboratory,Digital Equipment Corporation, 7 December 1990.

[Hoa74] C. A. R. Hoare, "Monitors: An Operating System StructuringConcept", Comm. ACM 17, 10 (October 1974), 549-57.

[RTLB+91] R. K. Raj, E. Tempero, H. M. Levy, A. P. Black, N. C. Hutchinson,and E. Jul, "Emerald: A General-Purpose Programming Language",Software--Practice and Experience 21(1), January 1991.


[Cha92] C. Chambers,`"Object-Oriented Multi-Methods in Cecil",Proc. ECOOP '92.

[Cha93] C. Chambers, "The Cecil Language: Specification and Rationale",Technical Report 93-03-05, University of Washington, March 1993.


[US87] and [CUL89] are basic references on SELF. [CMC92] describes thedesign variants found in prototype-based languages in general, includingSELF, and discusses the semantic differences between object models basedon classes and those based on prototypes. .

[CMC92] Christophe Dony, Jacques Malenfant, and Pierre Cointe, "Prototype-BasedLanguages: From a New Taxonomy to Constructive Proposals and Their Validation",in A. Paepcke, ed., OOPSLA '92 Conference Proceedings, ACM, Oct.,1992, published as SIGPLAN Notices, 27(10), Oct., 1992.

[CUL89] Craig Chambers, David Ungar, and Elgin Lee, "An EfficientImplementation of SELF, a Dynamically-Typed Object-Oriented Language Basedon Prototypes", in N. Meyrowitz, ed., OOPSLA '89 Conference Proceedings,ACM, Oct., 1989, published as SIGPLAN Notices, 24(10), Oct., 1989.

[US87] D. Ungar and R. B. Smith, "Self: The Power of Simplicity",in N. Meyrowitz, ed., OOPSLA '87 Conference Proceedings, ACM, Oct.,1987, published as SIGPLAN Notices, 22(12), Dec., 1987.

System Object Model (SOM)

[CS92] N. Coskun and R. Sessions, "Class Objects in SOM",IBM Personal Systems Developer (Summer 1992): 67-77.

[SC92] R. Sessions and N. Coskun, "Object-Oriented Programmingin OS/2 2.0", IBM Personal Systems Developer (Winter 1992):107-120.

[OH92] R. Orfali and D. Harkey, Client/Server Programming with OS/22.0, 2nd. ed., Van Nostrand Reinhold, New York, 1992.

SOMobjects Developer Toolkit Publications Version 2.0 - IBM Order No.96F8649

Notes: "SOMobjects" is a registered trademark of IBM.

OLE Component Object Model

[Bro94a] K. Brockschmidt, Inside OLE 2, Microsoft Press, Redmond,1994.

[Bro94b] K. Brockschmidt, "OLE 2.0 Part I: Windows Objects andthe Component Object Model", Microsoft Systems Journal, Aug.1993.

[Bro94c] K. Brockschmidt, "OLE 2.0 Part II: Implementing a SimpleWindows Object Using Either C or C++", Microsoft Systems Journal,Sept. 1993.

Analysis and Design Methods


Grady Booch, Object-Oriented Analysisand Design with Applications­-Second Edition, Redwood City, California:Benjamin/Cummings, 1994.


Peter Coad and Edward Yourdon, Object-OrientedAnalysis--Second Edition, Englewood Cliffs: Prentice Hall, 1991.


Peter Coad and Edward Yourdon, Object-OrientedDesign, Englewood Cliffs: Prentice Hall, 1991.


David W. Embly, Harry D. Kurtz, and ScottN. Woodfield, Object-Oriented Systems Analysis, Englewood Cliffs: Prentice-Hall,1992.


Derek Coleman, Patrick Arnold, StephanieBodoff, Chris Dollin, Helena Gilchrist, Fiona Hayes, and Paul Jeremaes,Object-Oriented Development, Englewood Cliffs: Prentice-Hall, 1994 [sic,though published in 1993].


Brian Henderson-Sellers and J. M. Edwards,Book Two of Object-Oriented Knowledge: The Working Object, Sydney: Prentice-Hall,1994.


Ivar Jacobson, Magnus Christerson, PatrikJonsson, and Gunnar Övergaard, Object-Oriented Software Engineering--AUse Case Driven Approach, Reading, Massachusetts: Addison-Wesley ("ACMPress"), 1992


Bertrand Meyer, Object-oriented SoftwareConstruction, Englewood Cliffs: Prentice Hall, 1988.


Kim Waldén and Jean-Marc Nerson,Seamless Object-Oriented Software Construction-Analysis and Design of ReliableSystems, Hemel Hempstead, Hertfordshire: Prentice Hall, 1995


James Martin, and James J. Odell, Object-orientedMethods--A Foundation, Englewood Cliffs: Prentice Hall, 1995.


James Rumbaugh, Michael Blaha, WilliamPremerlani, Frederick Eddy, and William Lorensen, Object-Oriented Modelingand Design, Englewood Cliffs: Prentice Hall, 1991.


Sally Shlaer and Steven J. Mellor, Object-OrientedSystems Analysis--Modeling the World in Data, Englewood Cliffs: PrenticeHall, 1988.

Sally Shlaer and Steven J. Mellor, ObjectLife Cycles--Modeling the World in States, Englewood Cliffs: Prentice Hall,1992.


Sally Shlaer and Stephen J. Mellor, ObjectLife Cycles--Modeling the World in States, Englewood Cliffs: Prentice Hall,1992.

Sally Shlaer and Stephen J. Mellor, "RealTime Recursive Design," Berkeley: Project Technology, 1992.


Rebecca Wirfs-Brock, Brian Wilkerson,and Lauren Wiener, Designing Object-Oriented Software, Englewood Cliffs:Prentice Hall, 1991.


[Man89] F. Manola, "Object Model Capabilities for Distributed ObjectManagement", TM-0149-06-89-165, GTE Laboratories Incorporated, June30, 1989.

[RBPE+91] J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen,Object-Oriented Modeling and Design, Prentice-Hall, 1991.

featuresmatrix intro page