Object-Relational Mapping Product Comparison

Object-Relational Fact Book

Object Storage Fact Book: Object-Relational Mapping
Release 5.0

Note: This was published in July 2001.
It is now being offered at a significantly reduced price.

The Object Storage Fact Book contains 225 detailed comparison tables on 13 object-relational mapping products. This data is essential for making an informed product selection. The data in the Object Storage Fact Book also accelerates the product selection process because the arduous and time-consuming task of gathering product data is completed for you.

13 Products Included

The object-relational mapping volume of the Object Storage Fact Book, includes information on the following product releases.

Company Product Release
AZ Software MTOS 1.0
Infobjects, S.A. ObjectDRIVER 2.2.1
ObjectFrontier, Inc. FrontierSuite for EJB Platform 2.0
FrontierSuite for Standalone Platform 2.0
Objectmatter, Inc. Visual BSF 2.3
ONTOS, Inc. ObjectSpark 4.0
POET Software Corporation FastObjects SQL Object Factory 7.0
Software Tree, Inc. JDX 2.1
Sourceforge hosted Open Source Project ObJectBridge 0.3.x
Sun Microsystems, Inc. Forte for Java 2.0, Internet Edition
WebGain, Inc. TopLink for Java 3.5
TopLink for WebLogic 3.5
TopLink for WebSphere 3.5

Table of Contents

This volume of the Object Storage Fact Book focuses on object-relational mapping products. The Table of Contents lists the comparison tables that make up the Object Storage Fact Book.

Sample Tables

Sample tables of the object-relational mapping volume of the Object Storage Fact Book follow.

Ordering Information

The object-relational mapping volume of the Object Storage Fact Book may be ordered separately or with the object database volume. Click here for more information on ordering.


General Architecture
Client/Server Architecture
Platforms Supported
Networks Supported
Cache Location
Client Cache Implementation
Application Server Cache Implementation
Unit of Transfer between Database and Application Memory
Object Access
Lookahead/Prefetch Controls
Memory Utilization
Capacity and Scalability
Memory Footprint
Licensing, Metering, and Open Source
ODMG Compliance
Java Data Objects (JDO) Compliance
SQL-92 DDL and DML Compliance
SQL-92 Integrity and Query Expression Compliance
SQL:1999 DDL and DML Compliance
SQL:1999 Integrity and Query Expression Compliance
CORBA/XA Support
Java Support
Java Certification
Microsoft Support
Objects, Attributes, and Relationships
Objects or User-Defined Types
Types and Classes
Binding and Polymorphism
Inheritance and Delegation
Logical and Physical View
Persistence with Programming Languages
Object Identifiers
Object Identifier to Reference Conversion
Attributes and Relationships
Literal Attributes
Multimedia Attributes
Multimedia Data Manipulation
Collections and Aggregates
Composite or Complex Objects
Object Clustering
Integrity Constraints
Integrity Constraint Use
Instance Operations Extensibility
Class or Type Operations Extensibility
Procedures and Programming Language
Method or Function Implementation
Method or Function Linking and Typing
Method or Function Execution Location
Object Language Integration
Application Server-Based Method or Function Language
Client-Based Database Method or Function Language
Class or Type Libraries
Object Language Class or Type Reuse by Inheritance
Object Language Class or Type Reuse by Changing Definition
Object Language Class or Type Reuse without Changing Definition
Object Language Class or Type Reuse using Processor
Object Language Class or Type Generation
Application Language Preprocessors
Procedural Languages
Higher-Level Language
Languages for Simultaneous Access
Languages for Simultaneous Method or Function Execution
Language Reference Safety
Language Type Safety
Code Management
Queries and Query Language
Query Language
Query Language Invocation
Query Language Invocation from Programming Language
Client-Side Programming Language Invocation
Application Server-Side Programming Language Invocation
Query Implementation
Data Updates and Queries
Query Processing Location
Query Scope
Client-Side Query Language Text Search
Application Server-Side Query Language Text Search
Query Optimization
Access Methods
Concurrency and Recovery
Standard Concurrency Control
Advanced Concurrency Control
Custom Concurrency Control
Instance Lock Modes
Class or Type Lock Modes
Lock Granularity
Reference Lock Granularity
Lock Setting, Releasing and Promotion
Change Notification or Triggers
Change Notification or Trigger Types Built-in
Change Notification or Trigger Execution Location
Change Notification or Trigger Implementation
Application Server-Based Change Notification or Trigger Language
Client-Based Database Change Notification or Trigger Language
Alerters or Named Events
Transaction Capability
Transaction Characteristics
Long Transactions
Shared Transactions
Multi-Threaded Transactions
Nested Short Transactions
Mapping Objects to External DBMSs
Mapping Direction: Database Table or Object Language Class or Type Generation
Mapping Generation
C++ Map Generation Processing
C# Map Generation Processing
Java Map Generation Processing
Perl Map Generation Processing
Python Map Generation Processing
Visual Basic Map Generation Processing
Smalltalk Map Generation Processing
SQL Generation and Support
Object Identifier Mapping
Literal Attribute Mappings
Multimedia Attribute Mappings
Table to Class Mappings
Class to Table Mappings
Collection to Table Mappings
Table to Collection Mappings
External DBMS Schema to Object Model Mapping Management
Schema Update Time
Schema Change Method
Multiple Mappings to a Schema
Multiple Schema
Versions of Schema
External DBMS Schema Change Isolation
External DBMS Schema Change Synchronization
Changes to Attributes or Data Members
Changes to Database Methods or Functions
Changes to the Superclass/Subclass Supertype/Subtype Relationship
Changes to the Database Schema
External DBMS Schema Integration
External DBMS Schema Integration Conflict Resolution
Mapping Error Handling
Data Migration
External DBMS Location Independence
External DBMS Data Manipulation
Data Synchronization: Refresh Options
Refresh: Invocation Points
DBMS Simultaneously Open
External DBMS Queries
External DBMS Joins
External DBMS Updates
Querying Data in Multiple Databases
External DBMS Distributed Query Processing
External DBMS Distributed Transaction Management
External DBMS Concurrency Control
External DBMS Locking
External DBMS Two-Phase Commit Optimization
External DBMS Updates with Two-Phase Commit
External DBMS Security Implementation
External DBMS Product Support
FrontierSuite for EJB Platform DBMS Access
FrontierSuite for Standalone Platform DBMS Access
Forte for Java DBMS Access
ObJectBridge DBMS Access
ObjectDRIVER DBMS Access
ObjectSpark DBMS Access
SQL Object Factory DBMS Access
TopLink for Java, WebSphere and WebLogic DBMS Access
Visual BSF DBMS Access
External DBMS Release Support
External DBMS Access Method
Security Authorization
Security Granularity
United States DOD Certified Security Compliance
Security Implementation
Encoding of Schema and Method or Function Definitions
Private or Personal Database/Workspace Authorization
User or Role Authorization
Implicit Authorization
Positive and Negative Authorization
Strong and Weak Authorization
Day and Time Authorization
Web Capabilities
Storage of Web-Related Data
Server Pages
XML Capabilities
Web Load Balancing
Web Dispatcher Fail-Over Strategy
Application Server Support
FrontierSuite for EJB Platform Application Server Support
FrontierSuite for Standalone Platform Application Server Support
Forte for Java Application Server Support
JDX Application Server Support
ObJectBridge Application Server Support
ObjectSpark Application Server Support
SQL Object Factory Application Server Support
TopLink for Java Application Server Support
Visual BSF Application Server Support
Schema Browsing/Editing Tools
Data Browsing/Editing Tools
Query Tools
Report Writer
Multimedia Tools
DBA Tools
DBA Alerts
DBA Notification Method
CASE Tool Integration
Internationalization of Interactive Tools
Internationalization of Batch Tools
Internationalization of Error Messages
Internationalization of Object Names and Strings