19. Object Management Package

Back to Table of Contents

This chapter defines the Object Management Package (OMP). The object identifier (referred to as om) assigned to the package, as defined by this guide, is the object identifier specified in ASN.1 as {joint-iso-ccitt(2) mhs-motis(6) group(6) white(1) api(2) om(4)}.

19.1. Class Hierarchy

Back to Table of Contents

This section shows the hierarchical organization of the OM classes. Subclassification is indicated by indentation, and the names of abstract classes are in italics. Thus, for example, OM_C_ENCODING is an immediate subclass of OM_C_OBJECT, an abstract class. The names of classes to which om_encode applies are in boldface. (DCE XOM does not support the encoding of any OM classes.) The om_create() function applies to all concrete classes.

19.2. Class Definitions

Back to Table of Contents

The following subsections define the OM classes.

19.2.1. OM_C_ENCODING

An instance of class OM_C_ENCODING is an object represented in a form suitable for transmission between workspaces, for transport via a network, or for storage in a file. Encoding can also be a suitable way of indicating to an intermediate service provider (for example, a directory, or message transfer system) an object that it does not recognize.

This class has the attributes of its superclass, OM_C_OBJECT, in addition to the specific attributes listed in Table 19-1.

Table 19-1: Attributes Specific to OM_C_ENCODING
OM AttributeValue SyntaxValue LengthValue NumberValue Initially
OM_OBJECT_CLASSString(OM_S_OBJECT_IDENTIFIER_STRING)--1--
OM_OBJECT_ENCODINGString1--1--
OM_RULESString(OM_S_OBJECT_IDENTIFIER_STRING)--1ber

1
If the Rules attribute is ber or canonical-ber, the syntax of the present attribute must be String(OM_S_ENCODING_STRING).

Note: In general, an instance of this class cannot appear as a value whose syntax is Object (C) if C is not OM_C_ENCODING, even if the class of the object encoded is C.

19.2.2. OM_C_EXTERNAL

An instance of class OM_C_EXTERNAL is a data value and one or more information items that describe the data value and identify its data type. This class corresponds to ASN.1's External type, and thus the class and the attributes specific to it are described indirectly in the specification of ASN.1. (See Clause 34 of Recommendation X.208, ``Specification of Abstract Syntax Notation 1 (ASN.1),'' CCITT Blue Book, Fascicle VIII.4, International Telecommunications Union, 1988. Also published by ISO as ISO 8824.)

This class has the attributes of its superclass, OM_C_OBJECT, in addition to the OM attributes specific to this class that are listed in Table 19-2.

Table 19-2: Attributes Specific to OM_C_EXTERNAL
OM AttributeValue SyntaxValue LengthValue NumberValue Initially
OM_ARBITRARY_ENCODINGString(OM_S_BIT_STRING)--0 or 11--
OM_ASN1_ENCODINGString(OM_S_ENCODING_STRING--0 or 11--
OM_DATA_VALUE_DESCRIPTORString(OM_S_OBJECT_DESCRIPTOR_STRING)--0 or 1--
OM_DIRECT_REFERENCEString(OM_S_OBJECT_IDENTIFIER_STRING)--0 or 1--
OM_INDIRECT_REFERENCEOM_S_INTEGER--0 or 1--
OM_OCTET_ALIGNED_STRINGString(OM_S_OCTET_STRING)--0 or 11--

1
Only one of these three attributes is present.

19.2.3. OM_C_OBJECT

The class OM_C_OBJECT represents information objects of any variety. This abstract class is distinguished by the fact that it has no superclass and that all other classes are its subclasses.

The attribute specific to this class is listed in Table 19-3.
Table 19-3: Attribute Specific to OM_C_OBJECT
OM AttributeValue SyntaxValue LengthValue NumberValue Initially
OM_CLASSString(OM_S_OBJECT_IDENTIFIER_STRING)--1--


© 1990-1996, Transarc Corporation