ODMA Incident Report

X000902: E_ODMVERSION neither Defined nor Implementable

Last updated 2000-09-11-08:24 -0700 (pdt)
The latest version of this information is available on the AIIM DMware ODMA site.

Category: Functionality - Defect Incident ID: X000902
Priority: 3 - Non-Critical Status: Correction Pending
Component: Odmacom.h 2.0.0 and ODMA 2.0 Specification
Repaired in: tbd
Related information:
Q000705: Changes Between ODMA Versions
Q000901: Using COM
ODMA Version 2.0 Errata
Assigned To: Dennis Hamilton Reported By: 
Dennis Hamilton (2000-09-10)
Date Opened: 2000-09-10 Date Closed: none

Summary (2000-09-11):

The ODMA 2.0 specification adds the HRESULT value E_ODM_VERSION for the ODMA-internal integration operation ODMGetODMInterface.  In fact,

  1. No value for this HRESULT has been defined in the ODMA 2.0 libraries.
  2. The ODMA 2.0 Connection Manager version 2.0.0 does not check for nor anticipate this value.
  3. The DMS integration has no way to verify its version against the ODMA-version level of the application that the DMS integration is being instantiated for.  Neither the version of the application nor the version of the Connection Manager is supplied to the DMS integration by the ODMGetODMInterface operation.

Since the proposed HRESULT cannot be produced, is not defined, and is not expected, it is proposed to remove it from the specification.

Actions (2000-09-11):

The following actions are proposed:

  1. Record the existence of an extraneous ODMGetODMInterface HRESULT in the ODMA Version 2.0 Errata. [2000-09-11: Done]
  2. Remove this extraneous result code from ODMA 2.0-3 as part of final editing.
  3. Close this incident report when (1-2) are completed and the documents are closed as being in final form.

Investigation (2000-09-11):

The following steps were taken to confirm the claims made in this incident report:

  1. The current Odma.h and Odmacom.h files were reviewed to confirm that E_ODM_VERSION is not defined in the libraries.
  2. The ODMA 2.0 Connection Manager source code, module Odmdms.cpp, was reviewed to confirm that method ODMDms::Init() does not behave in any way that assumes an E_ODM_VERSION response is possible from the only use of OGMGetODMInterface in the Connection Manager implementation.  That is the case, although ODMDms::Init() can produce an ODM_E_VERSION response as the result of determinations internal to its implementation independent of its ODMGetODMInterface usage.

created 2000-09-11-07:09 -0700 (pdt) by orcmid
$$Author: Orcmid $
$$Date: 00-09-11 8:25 $
$$Revision: 2 $