Subject: CIM24 schema tweaks

From: "Larry S. Bartz" <[email-masked]>
Date: Thu, 30 Nov 2000 07:42:01 -0500

My previous message on this subject was mishandled by my mailer,
resulting in severe truncation. Here's a retry:

I have encountered some difficulties implementing the CIM v2.4 
schema, as described in the DSP0117 documents at
http://www.dmtf.org/spec/denh.html .

Since the IETF Policy WG's draft-ietf-policy-core-schema-08.txt depends 
upon the cim24 schema, experimental implementers of "schema-08" may find 
the following comments and attached edited ABNF helpful.

I am also sharing these comments with the DMTF's WG chairs and CIM
support e-mail addresses. I request that these comments be forwarded
to the appropriate individuals for review.

 - DESC - Some Directory products enforce a length limit on the 
   DESC terms of objectclass and attributeType descriptions. X.501 
   defines the limit as {ub-schema}. Annex C of X.520 defines
   {ub-schema} as 1024. DESC term values which exceed 1024 characters 
   violate this limit. Several of the descriptions in DSP0117 contain 
   DESC term values which exceed 1024 characters in length. 

 - Matching Rules - Many of the attribute descriptions in DSP0117 
   have no matching rule terms specified. The attachment nominates 
   matching rule terms where appropriate, with comments designated by 
   #LSB.

 - Unspecified Attributes - Several attribute types are nominated by
   objectClass descriptions but which have not been defined. These
   include three whose names begin with "dlmHelperRefTo...". Based on 
   a presumption that other previously-defined attributes were intended, 
   the attachment substitutes defined attribute names for those which 
   are not defined, with comments designated by #LSB.

 - Forward references precluded - The attachment relocates entries 
   in the file to avoid forward references.

--
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|
# Larry Bartz                           |                              |
#  [email-masked]      | Ooo, ooo,                    |
#                                       | Ooo, ooo, oooooo!            |
#                                       | I've got a gnu attitude!     |
#  voice (317) 226-7060                 |                              |
#  FAX   (317) 226-6378                 |                              |
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|

#LSB ##########################################################################
#LSB
#LSB 20001129 - Larry S. Bartz - Internal Revenue Service - Indianapolis, IN
#LSB
#LSB This document extracted from DMTF Specification DSP0117, then modified
#LSB somewhat. See the complete specification at http://www.dmtf.org/
#LSB
#LSB This document is suitable for use as a schema definition by OpenLDAP 2.0.x.
#LSB
#LSB Format of this document, lines with leading:
#LSB
#LSB                                            #LSB = comments added by me, LSB
#LSB                                              ## = commented text from DSP0117
#LSB                                               # = comment-out ABNF from DSP0117
#LSB
#LSB CHANGES:
#LSB
#LSB - Some Directory products do not support explicit descriptions of nameForm,
#LSB   ditContentRule, and ditStructureRule. The ABNF for these are commented-out.
#LSB
#LSB - DESC - Some Directory products enforce a length limit on the DESC terms
#LSB   of objectclass and attributeType descriptions. X.501 defines the limit
#LSB   as ub-schema. Annex C of X.520 defines ub-schema as 1024. DESC term
#LSB   values which exceed 1024 characters violate this limit. Several of the
#LSB   descriptions in DSP0117 contain DESC term values which exceed 1024
#LSB   characters in length. This document comments-out all DESC terms as an
#LSB   expedient remedy. 
#LSB
#LSB - Matching Rules - Many of the attribute descriptions in DSP0117 have no
#LSB   matching rule terms specified. This document nominates matching rule terms
#LSB   where appropriate, with comments designated by #LSB.
#LSB
#LSB - Unspecified Attributes - Several attribute types are nominated by
#LSB   objectClass descriptions but which have not been defined. These include
#LSB   three whose names begin with "dlmHelperRefTo...". Based on a presumption
#LSB   that other previously-defined attributes were intended, this document
#LSB   substitutes defined attribute names for those which are not defined,
#LSB   with comments designated by #LSB.
#LSB
#LSB - ABNF format
#LSB               - Put NAME term and value on its own line for readability.
#LSB               - Since OpenLDAP doesn't parse ABNF with embedded comments,
#LSB                 commented lines which might otherwise be embedded within
#LSB                 the ABNF are listed immediately following the ABNF.
#LSB
#LSB - Forward references precluded - relocated entries in the file to preclude
#LSB   forward references. 
#LSB
#LSB - "objectclass" and "attributetype" identifiers prepended to ABNF stanzas
#LSB   to enhance readability and to enable this document to serve as a valid 
#LSB   schema definition for OpenLDAP 2.0.x.
#LSB
#LSB ##########################################################################
##
## Copyright (c) "2000" Distributed Management Task Force, Inc. (DMTF). 
## All rights reserved.    
##
## DMTF is a not-for-profit association of industry members dedicated to 
## promoting enterprise and systems management and interoperability. DMTF 
## specifications and documents may be reproduced for uses consistent with 
## this purpose by members and non-members, if correct attribution is given.  
## As DMTF specifications may be revised from time to time, the particular 
## version and release cited should always be noted. 
##
## DMTF LDAP Schema for the CIM v2.4 Core Information Model v1.0  
## 
## November 22, 2000 
##
## Abstract 
## This document presents an LDAP schema for the 
## CIM version 2.4 Core Information Model 
##
#LSB ##########################################################################
##
## 2.3 Helper Classes 
## 2.3.1 dlmOtherIdentifyingInfoInstance 
## CIM defines the concept of an ordered array, which LDAP does not support.  In the core 
## CIM model, indexed arrays are only used in two abstract classes (CIM_ComputerSystem 
## and CIM_LogicalDevice) to tie the values of two property arrays together.  In the LDAP 
## mapping, these properties are replaced with separate instances of 
## dlmOtherIdentifyingInfoInstance that each contain a single pair of attribute values and 
## are DIT contained by the parent class.  The attribute dlmOtherIdentifyingInfo is defined 
## in Section 3.3 and reused here and the attribute arrayIndex is defined as the RDN for this 
## class.  Finally, the structure rule is provided as a template to be filled in with structure 
## rule pointers to structural rules defined for concrete sub-classes of dlm1ComputerSystem 
## and dlm1LogicalDevice.  

attributetype    ( 1.3.6.1.4.1.412.100.1.2.5
     NAME 'arrayIndex' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
     EQUALITY caseIgnoreMatch 
   ) 
#     DESC 'the index of this child' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.101
     NAME 'dlmIdentifyingDescription' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
   ) 
#     DESC 'A free-form string providing explanation and 
#        details behind the entries in the dlmOtherIdentifyingInfo 
#        attribute.' 
#LSB - added matching rules

#LSB - Relocated following attribute from its numerical sequence location in
#LSB   the file, in order to preclude an annoying forward reference.
#LSB
attributetype    ( 1.3.6.1.4.1.412.100.2.2.112
     NAME 'dlmOtherIdentifyingInfo' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
   ) 
#     DESC 'OtherIdentifyingInfo captures additional data, 
#           beyond asset tag information, that could be used to 
#           identify a Physical Element. One example is bar code 
#           data associated with an Element that also has an asset  
#          tag. Note that if only bar code data is available and 
#           is unique/able to be used as an Element key, this 
#           property would be NULL and the bar code data used as 
#           the class key, in the Tag property.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.92
     NAME 'dlmOtherIdentifyingInfoInstance' 
     SUP top 
     MUST ( arrayIndex ) 
     MAY ( dlmOtherIdentifyingInfo $ dlmIdentifyingDescription ) 
   ) 
#     DESC 'helper class to tie indexed arrays in core model together' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.9
#     NAME 'dlmOtherIdentifyingInfoInstanceNameForm' 
#     OC dlmOtherIdentifyingInfoInstance 
#     MUST ( arrayIndex ) 
#   ) 
#    ( <core-sr-9>
#     NAME 'dlmOtherIdentifyingInfoInstanceStructureRule' 
#     FORM dlmOtherIdentifyingInfoInstanceNameForm 
#   ) 

## 2.4 Naming considerations  
## To support naming in the LDAP mapping of the core schema, the attribute 
## orderedCimKeys is defined, to provide the RDN for directory implementations. 

attributetype    ( 1.3.6.1.4.1.412.100.1.2.1
     NAME 'orderedCimKeys' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
     EQUALITY octetStringMatch 
   ) 
#     DESC 'The model path for the instance (without propagated 
#           keys). May be used as an RDN' 

## The value of this attribute is constructed by ordering the CIM keys [formatted as 
## "<className>.<key>=<value>[,<key>=<value>]*"] of the object in the US-ASCII 
## collation order of the property names.  For an instance with propagated keys in the CIM 
## namespace, the value of this attribute takes one of two forms:  either it includes all of the 
## instance's keys, or it includes only the non-propagated ones. Ordinarily the propagated 
## keys will be included when the DIT hierarchy in which an instance appears does not 
## reflect the CIM naming hierarchy represented by the propagation of keys via weak 
## associations.  When the DIT hierarchy does mirror the CIM naming hierarchy, the 
## propagated keys are unnecessary and may be omitted. By consulting the CIM schema, a 
## directory client can tell whether propagated keys may have been included. 
## In a previous version of this specification, the value of orderedCimKeys never included 
## propagated keys.  A second attribute, orderedCimModelPath, was used when propagated 
## keys were required. Now that orderedCimKeys includes the case where propagated keys 
## are included, orderedCimModelPath can be marked as "obsolete". 

attributetype    ( 1.3.6.1.4.1.412.100.1.2.2
     NAME 'orderedCimModelPath' 
     OBSOLETE 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15  SINGLE-VALUE 
     EQUALITY octetStringMatch 
   ) 
#     DESC 'The model path for the instance (with propagated keys). May 
#           be used as an RDN' 

## 3.1 ManagedElement 
## This abstract class provides a base for non-association classes in CIM. Its addition is one 
## of the major changes between CIM v2.2 and CIM v2.3.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.103
     NAME 'dlmCaption' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The Caption property is a short textual 
#           description (oneline string) of the object.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.104
     NAME 'dlmDescription' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
   ) 
#     DESC 'The Description property provides a textual 
#           description of the object.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.1
     NAME 'dlm1ManagedElement' 
     SUP top ABSTRACT 
     MAY ( dlmCaption $ dlmDescription $ orderedCimModelPath  
          $ orderedCimKeys ) 
   ) 
#     DESC 'ManagedElement is an abstract class that provides  
#          a common superclass (or top of the inheritance tree) 
#           for the non-association classes in the CIM Schema.' 

## 3.2 ManagedSystemElement 
## This is the base class for the system element hierarchy. Any distinguishable component 
## of a system is a candidate for inclusion in this class. Examples of this are software 
## components, such as files and devices, such as disk drives and controllers, and physical 
## components such as chips and cards.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.105
     NAME 'dlmInstallDate' 
     EQUALITY generalizedTimeMatch
     ORDERING generalizedTimeOrderingMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE 
   ) 
#     DESC 'A datetime value indicating when the object was 
#           installed. A lack of a value does not indicate that 
#           the object is not installed.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.106
     NAME 'dlmName' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The Name property defines the label by which the 
#           object is known. When subclassed, the Name property 
#           can be overridden to be a Key property.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.107
     NAME 'dlmStatus' 
     EQUALITY caseIgnoreMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{10} SINGLE-VALUE 
   ) 
#     DESC 'A string indicating the current status of the 
#           object. Various operational and non-operational 
#           statuses are defined. Operational statuses are "OK", 
#           "Degraded", "Stressed" and "Pred Fail". "Stressed" 
#           indicates that the Element is functioning, but needs 
#           attention. Examples of "Stressed" states are overload,  
#          overheated, etc. The condition "Pred Fail" (failure 
#           predicted) indicates that an Element is functioning 
#           properly but predicting a failure in the near future. 
#           An example is a SMART-enabled hard drive. 
#           Non-operational statuses can also be specified. These 
#           are "Error", "NonRecover", "Starting", "Stopping", 
#           "Service", "No Contact" and "Lost Comm". "NonRecover" 
#           indicates that a non-recoverable error has occurred. 
#           "Service" describes an Element being configured, 
#           maintained, cleaned, or otherwise administered. This 
#           status could apply during mirror-resilvering of a 
#           disk, reload of a user permissions list, or other 
#           administrative task. Not all such work is on-line, yet  
#          the Element is neither "OK" nor in one of the other 
#           states. "No Contact" indicates that the current 
#           instance of the monitoring system has knowledge of 
#           this Element but has never been able to establish 
#           communications with it. "Lost Comm" indicates that the  
#          ManagedSystemElement is known to exist and has been 
#           contacted successfully in the past, but is currently 
#           unreachable.  Value Mappings are "OK", "Error", 
#           "Degraded", "Unknown", "Pred Fail", "Starting", 
#           "Stopping", "Service", "Stressed", "NonRecover", "No 
#           Contact", "Lost Comm"' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.2
     NAME 'dlm1ManagedSystemElement' 
     SUP dlm1ManagedElement ABSTRACT 
     MAY ( dlmInstallDate $ dlmName $ dlmStatus ) 
   ) 
#     DESC 'ManagedSystemElement is the base class for the 
#           System Element hierarchy. Membership Criteria: Any 
#           distinguishable component of a System is a candidate 
#           for inclusion in this class. Examples: software 
#           components, such as files; and devices, such as disk 
#           drives and controllers, and physical components such 
#           as chips and cards.' 

## 3.3 PhysicalElement 
## This class acts as the base class for any component of a system that has a distinct physical 
## identity. Instances of this class can be defined in terms of labels that can be physically 
## attached to the object. All processes, files, and logical devices are considered not to be 
## physical elements. For example, it is not possible to attach a label to a modem. It is only 
## possible to attach a label to the card that implements the modem. The same card could 
## also implement a LAN adapter. This is an example of a single physical element (the card) 
## hosting more than one logical device.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.108
     NAME 'dlmCreationClassName' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'CreationClassName indicates the name of the class  
#          or the subclass used in the creation of an instance. 
#           When used with the other key properties of this class,  
#          this property allows all instances of this class and 
#           its subclasses to be uniquely identified.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.109
     NAME 'dlmManufactureDate' 
     EQUALITY generalizedTimeMatch
     ORDERING generalizedTimeOrderingMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE 
   ) 
#     DESC 'Date that this PhysicalElement was manufactured.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.110
     NAME 'dlmManufacturer' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The name of the organization responsible for 
#           producing the PhysicalElement. This may be the entity 
#           from whom the Element is purchased, but this is not 
#           necessarily true. The latter information is contained 
#           in the Vendor property of Product.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.111
     NAME 'dlmModel' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The name by which the PhysicalElement is 
#           generally known.' 
#LSB - added matching rules

#LSB - Relocated 1.3.6.1.4.1.412.100.2.2.112 from its numerical sequence
#LSB   location in the file, in order to preclude an annoying forward reference.

attributetype    ( 1.3.6.1.4.1.412.100.2.2.113
     NAME 'dlmPartNumber' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The part number assigned by the organization 
#           responsible for producing or manufacturing the 
#           PhysicalElement.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.114
     NAME 'dlmPoweredOn' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'Boolean indicating that the PhysicalElement is 
#           powered on (TRUE), or is currently off (FALSE).' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.115
     NAME 'dlmSKU' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The stock keeping unit number for this 
#           PhysicalElement.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.116
     NAME 'dlmSerialNumber' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'A manufacturer-allocated number used to identify 
#           the Physical Element.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.117
     NAME 'dlmTag' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'An arbitrary string that uniquely identifies the 
#           Physical Element and serves as the Element"s key.  The  
#          Tag property can contain information such as asset tag 
#           or serial number data. The key for PhysicalElement is 
#           placed very high in the object hierarchy in order to 
#           independently identify the hardware/entity, regardless  
#          of physical placement in or on Cabinets, Adapters, etc.  
#           For example, a hotswappable or removeable component 
#           may be taken from its containing (scoping) Package and  
#          be temporarily unused.  The object still continues to 
#           exist - and may even be inserted into a different 
#           scoping container.  Therefore, the key for Physical 
#           Element is an arbitrary string and is defined 
#           independently of any placement or location-oriented 
#           hierarchy.' 
#LSB - added matching rules
 
attributetype    ( 1.3.6.1.4.1.412.100.2.2.118
     NAME 'dlmVersion' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'A string indicating the version of the 
#           PhysicalElement.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.3
     NAME 'dlm1PhysicalElement' 
     SUP dlm1ManagedSystemElement ABSTRACT 
     MAY ( dlmCreationClassName $ dlmManufactureDate $ 
           dlmManufacturer $ dlmModel $ dlmOtherIdentifyingInfo $  
          dlmPartNumber $ dlmPoweredOn $ dlmSKU $ dlmSerialNumber $  
          dlmTag $ dlmVersion ) 
   ) 
#     DESC 'Subclasses of PhysicalElement define any 
#           component of a System that has a distinct physical 
#           identity. Instances of this class can be defined in 
#           terms of labels that can be physically attached to the  
#          object. All Processes, Files, and LogicalDevices are 
#           considered not to be Physical Elements. For example, 
#           it is not possible to attach a label to a modem. It is  
#          only possible to attach a label to the card that 
#           implements the modem. The same card could also 
#           implement a LAN  adapter. These are tangible Managed 
#           System Elements (usually actual hardware items) that 
#           have a physical manifestation of some sort. A Managed 
#           System Element is not necessarily a discrete 
#           component. For example, it is possible for a single 
#           Card (which is a type of Physical Element) to host 
#           more than one Logical Device. The card would be 
#           represented by a single Physical Element associated 
#           with multiple Logical Devices.' 

## 3.4 LogicalElement 
## This class is the base class for all the components of a system that represent abstract 
## system components, such as files, processes, or system capabilities as logical devices.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.4
     NAME 'dlm1LogicalElement' 
     SUP dlm1ManagedSystemElement ABSTRACT 
   ) 
#     DESC 'LogicalElement is a base class for all the 
#           components of a System that represent abstract system 
#           components, such as Files, Processes, or system 
#           capabilities in the form of Logical Devices.' 

## 3.5 System 
## This class is a logical element that aggregates an enumerable set of managed system 
## elements and operates as a functional whole. Within any particular subclass of system, 
## there is a well-defined list of managed system element classes whose instances must be 
## aggregated.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.119
     NAME 'dlmNameFormat' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The System object and its derivatives are Top 
#           Level Objects of CIM. They provide the scope for 
#           numerous components. Having unique System keys is 
#           required. A heuristic can be defined in individual 
#           System subclasses to attempt to always generate the 
#           same System Name Key. The NameFormat property 
#           identifies how the System name was generated, using 
#           the subclass" heuristic.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.120
     NAME 'dlmPrimaryOwnerContact' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'A string that provides information on how the 
#           primary system owner can be reached (e.g. phone 
#           number, email address, ...).' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.121
     NAME 'dlmPrimaryOwnerName' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The name of the primary system owner.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.122
     NAME 'dlmRoles' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
     EQUALITY caseExactMatch 
   ) 
#     DESC 'An array (bag) of strings that specify the roles 
#           this System plays in the IT-environment. Subclasses of  
#          System may override this property to define explicit 
#           Roles values. Alternately, a Working Group may 
#           describe the heuristics, conventions and guidelines 
#           for specifying Roles. For example, for an instance of 
#           a networking system, the Roles property might contain 
#           the string, "Switch" or "Bridge".' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.5
     NAME 'dlm1System' 
     SUP dlm1LogicalElement ABSTRACT 
     MAY ( dlmCreationClassName $ dlmName $ dlmNameFormat $ 
           dlmPrimaryOwnerContact $ dlmPrimaryOwnerName $ 
           dlmRoles ) 
   ) 
#     DESC 'A System is a LogicalElement that aggregates an 
#           enumerable set of Managed System Elements. The 
#           aggregation operates as a functional whole. Within any  
#          particular subclass of System, there is a well-defined 
#           list of Managed System Element classes whose instances  
#          must be aggregated.' 

## 3.6 ComputerSystem 
## This class is derived from System and represents a special collection of managed system 
## elements that provide compute capabilities. Thus, it serves as aggregation point to 
## associate one or more of the following elements: file systems, operating systems, 
## processors and memory (volatile and/or non-volatile storage).  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.123
     NAME 'dlmDedicated' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 
     EQUALITY integerMatch 
   ) 
#     DESC 'Enumeration indicating whether the ComputerSystem  
#          is a special-purpose System (ie, dedicated to a 
#           particular use), versus being "general purpose". For 
#           example, one could specify that the System is 
#           dedicated to "Print" (value=11) or acts as a "Hub" 
#           (value=8).  Values are 0="Not Dedicated", 
#           1="Unknown", 2="Other", 3="Storage", 4="Router", 
#           5="Switch", 6="Layer 3 Switch", 7="Central Office 
#           Switch", 8="Hub", 9="Access Server", 10="Firewall", 
#           11="Print", 12="I/O", 13="Web Caching", 
#           14="Management"' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.6
     NAME 'dlm1ComputerSystem' 
     SUP dlm1System ABSTRACT 
     MAY ( dlmDedicated $ dlmNameFormat ) 
   )
#LSB - original has a superfluous right paren in the last line of the stanza
#   )   ) 
#     DESC 'A class derived from System that is a special 
#           collection of ManagedSystemElements. This collection 
#           provides compute capabilities and serves as 
#           aggregation point to associate one or more of the 
#           following elements: FileSystem, OperatingSystem, 
#           Processor and Memory (Volatile and/or NonVolatile 
#           Storage).' 

## 3.7 AdminDomain 
## This abstract class represents a special grouping of MSEs that are all administered by the 
## same user or group of users. 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.93
     NAME 'dlm1AdminDomain' 
     SUP dlm1System ABSTRACT 
   ) 
#     DESC 'This is a special grouping of ManagedSystemElements that 
#         are all administered by the same user or group of users. 
#         It serves as an aggregation point to associate one or more 
#         of the following elements: network devices, such as 
#         routers and switches, servers, and other resources that 
#         can be accessed by end systems. This grouping of devices 
#         plays an essential role in ensuring that the same 
#         administrative POLICY is applied to all of the devices 
#         in the grouping.' 

## 3.8 LogicalDevice 
## This class represents an abstraction or emulation of a hardware entity that may or may 
## not be realized in physical hardware. Any characteristics of a logical device that are used 
## to manage its operation or configuration are contained in, or associated with, this object.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.124
     NAME 'dlmAdditionalAvailability' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 
     EQUALITY integerMatch 
   ) 
#     DESC 'Additional availability and status of the Device,  
#          beyond that specified in the Availability property. The  
#          Availability property denotes the primary status and 
#           availability of the Device. In some cases, this will 
#           not be sufficient to denote the complete status of the  
#          Device.  In those cases, the AdditionalAvailability 
#           property can be used to provide further information. 
#           For example, a Device"s primary Availability may be 
#           "Off line" (value=8), but it may also be in a low 
#           power state (AdditonalAvailability value=14), or the 
#           Device could be running Diagnostics (Additional 
#           Availability value=5, "In Test").  Values are 
#           1="Other", 2="Unknown", 3="Running/Full Power", 
#           4="Warning", 5="In Test", 6="Not Applicable", 7="Power  
#          Off", 8="Off Line", 9="Off Duty", 10="Degraded", 
#           11="Not Installed", 12="Install Error", 13="Power Save  
#          - Unknown", 14="Power Save - Low Power Mode", 15="Power  
#          Save - Standby", 16="Power Cycle", 17="Power Save - 
#           Warning", 18="Paused", 19="Not Ready", 20="Not 
#           Configured", 21="Quiesced"' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.125
     NAME 'dlmAvailability' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'The primary availability and status of the 
#           Device. (Additional status information can be 
#           specified using the AdditionalAvailability array 
#           property.) For example, the Availability property 
#           indicates that the Device is running and has full 
#           power (value=3), or is in a warning (4), test (5), 
#           degraded (10) or power save state (values 13-15 and 
#           17). Regarding the Power Save states, these are 
#           defined as follows: Value 13 ("Power Save - Unknown\  
#           Values are 1="Other", 2="Unknown", 3="Running/Full 
#           Power", 4="Warning", 5="In Test", 6="Not Applicable", 
#           7="Power Off", 8="Off Line", 9="Off Duty", 
#           10="Degraded", 11="Not Installed", 12="Install Error",  
#          13="Power Save - Unknown", 14="Power Save - Low Power 
#           Mode", 15="Power Save - Standby", 16="Power Cycle", 
#           17="Power Save - Warning", 18="Paused", 19="Not 
#           Ready", 20="Not Configured", 21="Quiesced"' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.126
     NAME 'dlmDeviceID' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'An address or other identifying information to 
#           uniquely name the LogicalDevice.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.127
     NAME 'dlmErrorCleared' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'ErrorCleared is a boolean property indicating 
#           that the error reported in LastErrorCode is now 
#           cleared.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.128
     NAME 'dlmErrorDescription' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
   ) 
#     DESC 'ErrorDescription is a free-form string supplying 
#           more information about the error recorded in 
#           LastErrorCode, and information on any corrective 
#           actions that may be taken.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.129
     NAME 'dlmLastErrorCode' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'LastErrorCode captures the last error code 
#           reported by the LogicalDevice.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.130
     NAME 'dlmMaxQuiesceTime' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'Maximum time in milliseconds, that a Device can 
#           run in a "Quiesced" state. A Device"s state is defined  
#          in its Availability and Additional Availability 
#           properties, where "Quiesced" is conveyed by the value 
#           21. What occurs at the end of the time limit is 
#           device-specific. The Device may unquiesce, may offline  
#          or take other action. A value of 0 indicates that a 
#           Device can remain quiesced indefinitely. The value is 
#           considered to be MilliSeconds.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.131
     NAME 'dlmPowerManagementCapabilities' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 
     EQUALITY integerMatch 
   ) 
#     DESC 'Indicates the specific power-related capabilities  
#          of a LogicalDevice. The array values, 0="Unknown", 
#           1="Not Supported" and 2="Disabled" are 
#           self-explanatory. The value, 3="Enabled" indicates 
#           that the power management features are currently 
#           enabled but the exact feature set is unknown or the 
#           information is unavailable. "Power Saving Modes 
#           Entered Automatically" (4) describes that a Device can  
#          change its power state based on usage or other 
#           criteria. "Power State Settable" (5) indicates that 
#           the SetPowerState method is supported. "Power Cycling 
#           Supported" (6) indicates that the SetPowerState method  
#          can be invoked with the PowerState input variable set 
#           to 5 ("Power Cycle"). "Timed Power On Supported" (7) 
#           indicates that the SetPowerState method can be invoked  
#          with the Power State input variable set to 5 ("Power 
#           Cycle")  Values are 0="Unknown", 1="Not Supported", 
#           2="Disabled", 3="Enabled", 4="Power Saving Modes 
#           Entered Automatically", 5="Power State Settable", 
#           6="Power Cycling Supported", 7="Timed Power On 
#           Supported"' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.132
     NAME 'dlmPowerManagementSupported' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'Boolean indicating that the Device can be power 
#           managed - ie, put into a power save state. This 
#           boolean does not indicate that power management 
#           features are currently enabled, or if enabled, what 
#           features are supported. Refer to the 
#           PowerManagementCapabilities array for this 
#           information. If this boolean is false, the integer 
#           value 1, for the string, "Not Supported", should be 
#           the only entry in the PowerManagementCapabilities 
#           array.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.133
     NAME 'dlmPowerOnHours' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'The number of consecutive hours that this Device 
#           has been powered, since its last power cycle. The 
#           value is considered to be Hours.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.134
     NAME 'dlmStatusInfo' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'StatusInfo is a string indicating whether the 
#           Logical Device is in an enabled (value = 3), disabled 
#           (value = 4) or some other (1) or unknown (2) state. If  
#          this property does not apply to the LogicalDevice, the 
#           value, 5 ("Not Applicable").  Values are 1="Other", 
#           2="Unknown", 3="Enabled", 4="Disabled", 5="Not 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.135
     NAME 'dlmTotalPowerOnHours' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'The total number of hours that this Device has 
#           been powered. The value is considered to be Hours.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.7
     NAME 'dlm1LogicalDevice' 
     SUP dlm1LogicalElement ABSTRACT 
     MAY ( dlmAdditionalAvailability $ dlmAvailability $ 
           dlmCreationClassName $ dlmDeviceID $ dlmErrorCleared $  
          dlmErrorDescription $ dlmLastErrorCode $ dlmMaxQuiesceTime $ 
           dlmPowerManagementCapabilities $ 
           dlmPowerManagementSupported $ dlmPowerOnHours $ 
           dlmStatusInfo $ dlmTotalPowerOnHours ) 
   ) 
#     DESC 'An abstraction or emulation of a hardware entity,  
#          that may or may not be Realized in physical hardware. 
#           Any characteristics of a LogicalDevice that are used 
#           to manage its operation or configuration are contained  
#          in, or associated with, the LogicalDevice object. 
#           Examples of the operational properties of a Printer 
#           would be paper sizes supported, or detected errors. 
#           Examples of the configuration properties of a Sensor 
#           Device would be threshold settings. Various 
#           configurations could exist for a LogicalDevice. These 
#           configurations could be contained in Setting objects 
#           and associated with the LogicalDevice.' 

## 3.9 Service 
## This class represents a Logical Element that contains the information necessary to 
## represent and manage the functionality provided by a device and/or software feature. A 
## service is a general-purpose object to configure and manage the implementation of 
## functionality. It is not the functionality itself.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.136
     NAME 'dlmStartMode' 
     EQUALITY caseIgnoreMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{10} SINGLE-VALUE 
   ) 
#     DESC 'StartMode is a string value indicating whether 
#           the Service is automatically started by a System, 
#           Operating System, etc. or only started upon request.  
#           Value Mapping are "Automatic", "Manual"' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.137
     NAME 'dlmStarted' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'Started is a boolean indicating whether the 
#           Service has been started (TRUE), or stopped (FALSE).' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.8
     NAME 'dlm1Service' 
     SUP dlm1LogicalElement ABSTRACT 
     MAY ( dlmCreationClassName $ dlmName $ dlmStartMode $ 
           dlmStarted ) 
   ) 
#     DESC 'A Service is a Logical Element that contains the 
#           information necessary to represent and manage the 
#           functionality provided by a Device and/or 
#           SoftwareFeature. A Service is a general-purpose object  
#          to configure and manage the implementation of 
#           functionality.  It is not the functionality itself.' 
 
## 3.10 ServiceAccessPoint 
## This class represents the ability to use or invoke a service. Access points represent that a 
## service is made available to other entities for use.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.9
     NAME 'dlm1ServiceAccessPoint' 
     SUP dlm1LogicalElement ABSTRACT 
     MAY ( dlmCreationClassName $ dlmName ) 
   ) 
#     DESC 'ServiceAccessPoint represents the ability to 
#           utilize or invoke a Service.  Access points represent 
#           that a Service is made available to other entities for  
#          use.' 

## 3.11 Collection 
## This abstract class provides a common superclass for classes that represent collections of 
## managed elements.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.10
     NAME 'dlm1Collection' 
     SUP dlm1ManagedElement ABSTRACT 
   ) 
#     DESC 'Collection is an abstract class that provides a 
#           common superclass for data elements that represent 
#           collections of ManagedElements and its subclasses.' 

## 3.12 CollectionOfMSEs 
## This object allows the grouping of ManagedSystemElement objects for associating 
## settings and configurations. It is abstract to require further definition and semantic 
## refinement in subclasses. As this object does not carry any state or status information, it 
## only represents a grouping or 'bag' of elements. So, it is incorrect to subclass groups that 
## have state/status from this class - an example is RedundancyGroup (which is correctly 
## subclassed from LogicalElement).  
## Collections typically aggregate 'like' objects, and represent an optimization. Without 
## collections, one is forced to define individual associations, to tie settings and 
## configuration objects to individual ManagedSystemElements. There may be much 
## duplication in assigning the same setting to multiple objects. In addition, using this object 
## allows the determination that the setting and configuration associations are indeed the 
## same for the collection's members. This information would otherwise be obtained by 
## defining the collection in a proprietary way, and then querying the associations to 
## determine if the collection set is completely covered.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.138
     NAME 'dlmCollectionID' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The identification of the Collection object. When  
#          subclassed, the CollectionID property can be overridden  
#          to be a Key property.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.11
     NAME 'dlm1CollectionOfMSEs' 
     SUP dlm1Collection ABSTRACT 
     MAY ( dlmCollectionID ) 
   ) 
#     DESC 'The CollectionOfMSEs object allows the grouping 
#           of Managed SystemElements for the purposes of 
#           associating Settings and Configurations. It is 
#           abstract to require further definition and semantic 
#           refinement in subclasses. The CollectionOfMSEs object 
#           does not carry any state or status information, but 
#           only represents a grouping or "bag" of Elements. For 
#           this reason, it is incorrect to subclass groups that 
#           have state/status from CollectionOfMSEs - an example 
#           is Redundancy Group (which is correctly subclassed 
#           from LogicalElement). Collections typically aggregate 
#           "like" objects, and represent an optimization. Without  
#          Collections, one is forced to define individual 
#           ElementSetting and ElementConfiguration associations, 
#           to tie Settings and Configuration objects to 
#           individual ManagedSystemElements. There may be much 
#           duplication in assigning the same Setting to multiple 
#           objects. In addition, using the Collection object 
#           allows the determination that the Setting and 
#           Configuration associations are indeed the same for the  
#          Collection"s members. This information would otherwise 
#           be obtained by defining the Collection in a 
#           proprietary manner, and then querying the 
#           ElementSetting and ElementConfiguration associations 
#           to determine if the Collection set is completely 
#           covered.' 

## 3.13 Configuration Classes 
## This object allows the grouping of sets of parameters (defined in Setting objects) and 
## dependencies for one or more managed system elements. The configuration object 
## represents a certain behavior, or a desired functional state for the managed system 
## elements. The desired functional state is typically driven by external requirements such as 
## time or location. For example, to connect to a Mail System from 'home', a dependency on 
## a modem exists, but a dependency on a network adapter exists at 'work'. Settings for the 
## pertinent logical devices can be defined and aggregated by the configuration. Therefore, 
## two 'Connect to Mail' configurations may be defined grouping the relevant dependencies 
## and setting objects.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.12
     NAME 'dlm1Configuration' 
     SUP dlm1ManagedElement ABSTRACT 
   ) 
#     DESC 'The Configuration object allows the grouping of 
#           sets of parameters (defined in Setting objects) and 
#           dependencies for one or more ManagedSystemElements. 
#           The Configuration object represents a certain 
#           behavior, or a desired functional state for the 
#           ManagedSystemElements. The desired functional state is  
#          typically driven by external requirements such as time 
#           or location. For example, to connect to a Mail System 
#           from "home", a dependency on a modem exists, but a 
#           dependency on a network adapter exists at "work". 
#           Settings for the pertinent LogicalDevices (in this 
#           example, POTSModem and NetworkAdapter) can be defined 
#           and aggregated by the Configuration. Therefore, two 
#           "Connect to Mail" Configurations may be defined 
#           grouping the relevant dependencies and Setting 
#           objects.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.13
     NAME 'dlm1ConfigurationAuxClass' 
     SUP dlm1Configuration AUXILIARY 
   ) 
#     DESC 'The Configuration object allows the grouping of 
#           sets of parameters (defined in Setting objects) and 
#           dependencies for one or more ManagedSystemElements. 
#           The Configuration object represents a certain 
#           behavior, or a desired functional state for the 
#           ManagedSystemElements. The desired functional state is  
#          typically driven by external requirements such as time 
#           or location. For example, to connect to a Mail System 
#           from "home", a dependency on a modem exists, but a 
#           dependency on a network adapter exists at "work". 
#           Settings for the pertinent LogicalDevices (in this 
#           example, POTSModem and NetworkAdapter) can be defined 
#           and aggregated by the Configuration. Therefore, two 
#           "Connect to Mail" Configurations may be defined 
#           grouping the relevant dependencies and Setting 
#           objects.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.14
     NAME 'dlm1ConfigurationInstance' 
     SUP dlm1Configuration  
   ) 
#     DESC 'The Configuration object allows the grouping of 
#           sets of parameters (defined in Setting objects) and 
#           dependencies for one or more ManagedSystemElements. 
#           The Configuration object represents a certain 
#           behavior, or a desired functional state for the 
#           ManagedSystemElements. The desired functional state is  
#          typically driven by external requirements such as time 
#           or location. For example, to connect to a Mail System 
#           from "home", a dependency on a modem exists, but a 
#           dependency on a network adapter exists at "work". 
#           Settings for the pertinent LogicalDevices (in this 
#           example, POTSModem and NetworkAdapter) can be defined 
#           and aggregated by the Configuration. Therefore, two 
#           "Connect to Mail" Configurations may be defined 
#           grouping the relevant dependencies and Setting 
#           objects.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.1 NAME 'dlm1ConfigurationInstanceNameForm1' 
#     OC dlm1ConfigurationInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-1> NAME 'dlm1ConfigurationInstanceStructureRule1' 
#     Form dlm1ConfigurationInstanceNameForm1 
#   ) 
## The following content rule specifies the auxiliary classes that may be attached to 
##dlm1ConfigurationInstance. 

#    ( 1.3.6.1.4.1.412.100.2.1.3.14
#     NAME 'dlm1ConfigurationInstanceContentRule' 
#     DESC 'Aux classes that can attach to 
#           dlm1ConfigurationInstance.' 
#     MAY ( dlm1ElementConfigurationAuxClass $ 
#           dlm1CollectionConfigurationAuxClass $ 
#           dlm1ConfigurationComponentAuxClass $ 
#           dlm1SettingContextAuxClass ) 
#   ) 
##3.14 Setting 
##This class represents configuration-related and operational parameters for one or more 
##managed system element(s). A managed system element may have multiple setting 
##objects associated with it. The current operational values for an element's parameters are 
##reflected by properties in the element itself or by properties in its associations. These 
##properties do not have to be the same values present in the setting object. For example, a 
##modem may have a setting baud rate of 56Kb/sec but be operating at 19.2Kb/sec.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.139
     NAME 'dlmSettingID' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The identifier by which the Setting object is 
#           known.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.15
     NAME 'dlm1Setting' 
     SUP dlm1ManagedElement ABSTRACT 
     MAY ( dlmSettingID ) 
   ) 
#     DESC 'The Setting class represents 
#           configuration-related and operational parameters for 
#           one or more ManagedSystem Element(s). A 
#           ManagedSystemElement may have multiple Setting objects  
#          associated with it. The current operational values for 
#           an Element"s parameters are reflected by properties in  
#          the Element itself or by properties in its 
#           associations. These properties do not have to be the 
#           same values present in the Setting object. For 
#           example, a modem may have a Setting baud rate of 
#           56Kb/sec but be operating at 19.2Kb/sec.' 

## 3.15 Product Classes 
## This concrete class that is a collection of physical elements, software features and/or 
## other products, acquired as a unit. Acquisition implies an agreement between supplier and 
## consumer that may have implications to product licensing, support and warranty.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.140
     NAME 'dlmIdentifyingNumber' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'Product identification such as a serial number on  
#          software, a die number on a hardware chip, or (for 
#           non-commercial Products) a project number.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.141
     NAME 'dlmSKUNumber' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'Product SKU (stock keeping unit) information.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.142
     NAME 'dlmVendor' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'The name of the Product"s supplier, or entity 
#           selling the Product (the manufacturer, reseller, OEM, 
#           etc.). Corresponds to the Vendor property in the 
#           Product object in the DMTF Solution Exchange Standard.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.143
     NAME 'dlmWarrantyDuration' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'If this Product is under warranty, the duration 
#           of the warranty in days. The value is considered to be  
#          Days.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.144
     NAME 'dlmWarrantyStartDate' 
     EQUALITY generalizedTimeMatch
     ORDERING generalizedTimeOrderingMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE 
   ) 
#     DESC 'If this Product is under warranty, the start date  
#          of the warranty.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.16
     NAME 'dlm1Product' 
     SUP dlm1ManagedElement ABSTRACT 
     MAY ( dlmIdentifyingNumber $ dlmName $ dlmSKUNumber $ 
           dlmVendor $ dlmVersion $ dlmWarrantyDuration $ 
           dlmWarrantyStartDate ) 
   ) 
#     DESC 'Product is a concrete class that is a collection 
#           of PhysicalElements, SoftwareFeatures and/or other 
#           Products, acquired as a unit. Acquisition implies an 
#           agreement between supplier and consumer which may have  
#          implications to Product licensing, support and 
#           warranty. Non-commercial (e.g., in-house developed 
#           Products) should also be identified as an instance of 
#           Product.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.17
     NAME 'dlm1ProductAuxClass' 
     SUP dlm1Product AUXILIARY 
   ) 
#     DESC 'Product is a concrete class that is a collection 
#           of PhysicalElements, SoftwareFeatures and/or other 
#           Products, acquired as a unit. Acquisition implies an 
#           agreement between supplier and consumer which may have  
#          implications to Product licensing, support and 
#           warranty. Non-commercial (e.g., in-house developed 
#           Products) should also be identified as an instance of 
#           Product.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.18
     NAME 'dlm1ProductInstance' 
     SUP dlm1Product 
   ) 
#     DESC 'Product is a concrete class that is a collection 
#           of PhysicalElements, SoftwareFeatures and/or other 
#           Products, acquired as a unit. Acquisition implies an 
#           agreement between supplier and consumer which may have  
#          implications to Product licensing, support and 
#           warranty. Non-commercial (e.g., in-house developed 
#           Products) should also be identified as an instance of 
#           Product.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.2
#     NAME 'dlm1ProductInstanceNameForm1' 
#     OC dlm1ProductInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-2> NAME 'dlm1ProductInstanceStructureRule1' 
#     Form dlm1ProductInstanceNameForm1 
#   ) 
## The following content rule specifies the auxiliary classes that may be attached to 
## dlm1ProductInstance.  

#    ( 1.3.6.1.4.1.412.100.2.1.3.18 NAME 'dlm1ProductInstanceContentRule' 
#     DESC 'Aux classes that can attach to 
#           dlm1ProductInstance.' 
#     MAY ( dlm1ProductProductDependencyAuxClass $ 
#           dlm1ProductSupportAuxClass $ dlm1ProductFRUAuxClass $ 
#           dlm1ProductParentChildAuxClass $ 
#           dlm1FRUIncludesProductAuxClass $ 
#           dlm1ProductPhysicalElementsAuxClass ) 
#   ) 

## 3.16 SupportAccess Classes 
## These classes define how to obtain help for a product.  
 
attributetype    ( 1.3.6.1.4.1.412.100.2.2.145
     NAME 'dlmCommunicationInfo' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
   ) 
#     DESC 'CommunicationInfo provides the details of the 
#           Communication Mode. For example, if the 
#           CommunicationMode is "Phone", CommunicationInfo 
#           specifies the phone number to be called.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.146
     NAME 'dlmCommunicationMode' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'CommunicationMode defines the form of 
#           communication in order to obtain support. For example,  
#          phone communication (value =2), fax (3) or email (8) 
#           can be specified.  Values are 1="Other", 2="Phone", 
#           3="Fax", 4="BBS", 5="Online Service", 6="Web Page", 
#           7="FTP", 8="E-mail"' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.147
     NAME 'dlmLocale' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'Locale defines the geographic region and/or 
#           language dialect to which this Support resource 
#           pertains.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.148
     NAME 'dlmSupportAccessId' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE 
   ) 
#     DESC 'SupportAccessID is an arbitrary, free form string  
#          defined by the Product Vendor or by the organization 
#           that deploys the Product.  This property, since it is 
#           a key, should be unique throughout the enterprise.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.19
     NAME 'dlm1SupportAccess' 
     SUP dlm1ManagedElement ABSTRACT 
     MAY ( dlmCommunicationInfo $ dlmCommunicationMode $ 
           dlmDescription $ dlmLocale $ dlmSupportAccessId ) 
   ) 
#     DESC 'The SupportAccess association defines how to 
#           obtain assistance for a Product.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.20
     NAME 'dlm1SupportAccessAuxClass' 
     SUP dlm1SupportAccess AUXILIARY 
   ) 
#     DESC 'The SupportAccess association defines how to 
#           obtain assistance for a Product.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.21
     NAME 'dlm1SupportAccessInstance' 
     SUP dlm1SupportAccess 
   ) 
#     DESC 'The SupportAccess association defines how to 
#           obtain assistance for a Product.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.3 NAME 'dlm1SupportAccessInstanceNameForm1' 
#     OC dlm1SupportAccessInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-3> NAME 'dlm1SupportAccessInstanceStructureRule1' 
#     Form dlm1SupportAccessInstanceNameForm1 
#   ) 

## The following content rule specifies the auxiliary classes that may be attached to 
## dlm1SupportAccessInstance.  

#    ( 1.3.6.1.4.1.412.100.2.1.3.21 NAME 'dlm1SupportAccessInstanceContentRule' 
#     DESC 'Aux classes that can attach to 
#           dlm1SupportAccessInstance.' 
#     MAY ( dlm1ProductSupportAuxClass ) 
#   ) 

## 3.17 FRU Classes 
## These classes model vendor-defined collection of products and/or physical elements that 
## is associated with a product for supporting, maintaining or upgrading that product at the 
## customer's location. FRU is an acronym for 'field replaceable unit'.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.149
     NAME 'dlmFRUNumber' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'FRU ordering information.' 
#LSB - added matching rules

attributetype    ( 1.3.6.1.4.1.412.100.2.2.150
     NAME 'dlmRevisionLevel' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE 
   ) 
#     DESC 'The FRU"s revision level.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.22
     NAME 'dlm1FRU' 
     SUP dlm1ManagedElement ABSTRACT 
     MAY ( dlmDescription $ dlmFRUNumber $ 
           dlmIdentifyingNumber $ dlmName $ dlmRevisionLevel $ 
           dlmVendor ) 
   ) 
#     DESC 'The FRU class is a vendor-defined collection of 
#           Products and/or PhysicalElements that is associated 
#           with a Product for the purpose of supporting, 
#           maintaining or upgrading that Product at the 
#           customer"s location. FRU is an acronym for "field 
#           replaceable unit". ' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.23
     NAME 'dlm1FRUAuxClass' 
     SUP dlm1FRU AUXILIARY 
   ) 
#     DESC 'The FRU class is a vendor-defined collection of 
#           Products and/or PhysicalElements that is associated 
#           with a Product for the purpose of supporting, 
#           maintaining or upgrading that Product at the 
#           customer"s location. FRU is an acronym for "field 
#           replaceable unit". ' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.24
     NAME 'dlm1FRUInstance' 
     SUP dlm1FRU 
   ) 
#     DESC 'The FRU class is a vendor-defined collection of 
#           Products and/or PhysicalElements that is associated 
#           with a Product for the purpose of supporting, 
#           maintaining or upgrading that Product at the 
#           customer"s location. FRU is an acronym for "field 
#           replaceable unit". ' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.4 NAME 'dlm1FRUInstanceNameForm1' 
#     OC dlm1FRUInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-4> NAME 'dlm1FRUInstanceStructureRule1' 
#     Form dlm1FRUInstanceNameForm1 
#   ) 
## The following content rule specifies the auxiliary classes that may be attached to 
## dlm1FRUInstance.  

#    ( 1.3.6.1.4.1.412.100.2.1.3.24 NAME 'dlm1FRUInstanceContentRule' 
#     DESC 'Aux classes that can attach to dlm1FRUInstance.' 
#     MAY ( dlm1ProductFRUAuxClass $ 
#           dlm1FRUPhysicalElementsAuxClass $ 
#           dlm1FRUIncludesProductAuxClass ) 
#   ) 

## 3.18 CollectedCollections Classes 
## These classes represent that a CollectionOfMSEs may itself be contained in another 
## CollectionOfMSEs object.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.25
     NAME 'dlm1CollectedCollections' 
     SUP top ABSTRACT 
   ) 
#     DESC 'CollectedCollections is an aggregation 
#           association representing that a CollectionOfMSEs may 
#           itself be contained in a CollectionOfMSEs.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.151
     NAME 'dlmCollectedCollectionsCollectionRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
   ) 
#     DESC 'The "higher level" or parent element in the 
#           aggregation.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.152
     NAME 'dlmCollectedCollectionsCollectionInCollectionRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
   ) 
#     DESC 'The "collected" Collection.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.26
     NAME 'dlm1CollectedCollectionsAuxClass' 
     SUP dlm1CollectedCollections AUXILIARY 
     MAY ( dlmCollectedCollectionsCollectionRef $ 
           dlmCollectedCollectionsCollectionInCollectionRef ) 
   ) 
#     DESC 'CollectedCollections is an aggregation 
#           association representing that a CollectionOfMSEs may 
#           itself be contained in a CollectionOfMSEs.' 

## 3.19 LogicalIdentity 
## This auxiliary class represents an abstract and generic association, showing that two 
## LogicalElements represent different aspects of the same underlying entity. This 
## relationship conveys what could be defined with multiple inheritance. It is restricted to 
## the 'logical' aspects of a ManagedSystemElement. In most scenarios, the equivalence of 
## keys or some other identifying properties of the related elements determines the identity 
## relationship.  The association should only be used in well-understood scenarios.  This is 
## why the association is abstract - allowing more concrete definition and clarification in 
## subclasses.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.27
     NAME 'dlm1LogicalIdentity' 
     SUP top ABSTRACT 
   ) 
#     DESC 'LogicalIdentity is an abstract and generic 
#           association, indicating that two LogicalElements 
#           represent different aspects of the same underlying 
#           entity. This relationship conveys what could be 
#           defined with multiple inheritance. It is restricted to  
#          the "logical" aspects of a ManagedSystem Element. In 
#           most scenarios, the Identity relationship is 
#           determined by the equivalence of Keys or some other 
#           identifying properties of the related Elements. The 
#           association should only be used in well understood 
#           scenarios. This is why the association is abstract - 
#           allowing more concrete definition and clarification in  
#          subclasses. One of the scenarios where this 
#           relationship is reasonable is to represent that a 
#           Device is both a "bus" entity and a "functional" 
#           entity. For example, a Device could be both a USB 
#           (bus) and a Keyboard (functional) entity.' 

## 3.20 ConfigurationComponent Classes 
## This association aggregates 'lower-level' configuration objects into a \'high-level' 
## configuration. This enables the assembly of complex configurations by grouping together 
## simpler ones.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.28
     NAME 'dlm1ConfigurationComponent' 
     SUP top ABSTRACT 
   ) 
#     DESC 'ConfigurationComponent aggregates "lower-level" 
#           Configuration objects into a "high-level" 
#           Configuration. This enables the assembly of complex 
#           Configurations by grouping together simpler ones. For 
#           example, a logon policy for the United States could 
#           consist of two Configuration groups, one for the east 
#           coast and one for the west coast. Each of these could 
#           in turn consist of multiple Configurations to handle 
#           different aspects of the logon process.' 
 
attributetype    ( 1.3.6.1.4.1.412.100.2.2.153
     NAME 'dlmConfigurationComponentConfigComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'A Configuration that is part of a "higher-level" 
#           Configuration.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.154
     NAME 'dlmConfigurationComponentConfigGroupRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Configuration that aggregates additional 
#           Configurations. ' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.29
     NAME 'dlm1ConfigurationComponentAuxClass' 
     SUP dlm1ConfigurationComponent AUXILIARY 
     MAY ( dlmConfigurationComponentConfigComponentRef $ 
           dlmConfigurationComponentConfigGroupRef ) 
   ) 
#     DESC 'ConfigurationComponent aggregates "lower-level" 
#           Configuration objects into a "high-level" 
#           Configuration. This enables the assembly of complex 
#           Configurations by grouping together simpler ones. For 
#           example, a logon policy for the United States could 
#           consist of two Configuration groups, one for the east 
#           coast and one for the west coast. Each of these could 
#           in turn consist of multiple Configurations to handle 
#           different aspects of the logon process.' 

## 3.21 ElementConfiguration Classes 
## This association relates a configuration object to one or more managed system elements. 
## The configuration object represents a certain behavior, or a desired functional state for 
## the associated managed system elements.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.30
     NAME 'dlm1ElementConfiguration' 
     SUP top ABSTRACT 
   ) 
#     DESC 'This association relates a Configuration object 
#           to one or more ManagedSystemElements. The 
#           Configuration object represents a certain behavior, or  
#          a desired functional state for the associated 
#           ManagedSystemElements.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.155
     NAME 'dlmElementConfigurationConfigurationRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Configuration object that groups the Settings  
#          and dependencies associated with the 
#           ManagedSystemElement.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.156
     NAME 'dlmElementConfigurationElementRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The ManagedSystemElement.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.31
     NAME 'dlm1ElementConfigurationAuxClass' 
     SUP dlm1ElementConfiguration AUXILIARY 
     MAY ( dlmElementConfigurationConfigurationRef $ 
           dlmElementConfigurationElementRef ) 
   ) 
#     DESC 'This association relates a Configuration object 
#           to one or more ManagedSystemElements. The 
#           Configuration object represents a certain behavior, or  
#          a desired functional state for the associated 
#           ManagedSystemElements.' 

## 3.22 ConfigurationCollection Classes 
## These classes relate a Configuration object to one or more CollectionOfMSEs objects. 
## The Configuration object represents a certain behavior, or a desired functional state for 
## the associated collection.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.32
     NAME 'dlm1CollectionConfiguration' 
     SUP top ABSTRACT 
   ) 
#     DESC 'This association relates a Configuration object 
#           to one or more CollectionOfMSEs objects. The 
#           Configuration object represents a certain behavior, or  
#          a desired functional state for the associated 
#           Collection.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.157
     NAME 'dlmCollectionConfigurationCollectionRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The CollectionOfMSEs.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.158
     NAME 'dlmCollectionConfigurationConfigurationRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Configuration object that groups the Settings  
#          and dependencies associated with the Collection.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.33
     NAME 'dlm1CollectionConfigurationAuxClass' 
     SUP dlm1CollectionConfiguration AUXILIARY 
     MAY ( dlmCollectionConfigurationCollectionRef $ 
           dlmCollectionConfigurationConfigurationRef ) 
   ) 
#     DESC 'This association relates a Configuration object 
#           to one or more CollectionOfMSEs objects. The 
#           Configuration object represents a certain behavior, or  
#          a desired functional state for the associated 
#           Collection.' 

## 3.23 ElementSetting Classes 
## These classes represent the association between managed system elements and the setting 
## class(es) defined for them.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.34
     NAME 'dlm1ElementSetting' 
     SUP top ABSTRACT 
   ) 
#     DESC 'ElementSetting represents the association between  
#          Managed SystemElements and the Setting class(es) 
#           defined for them.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.159
     NAME 'dlmElementSettingElementRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The ManagedSystemElement.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.160
     NAME 'dlmElementSettingSettingRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Setting object associated with the 
#           ManagedSystem Element.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.35
     NAME 'dlm1ElementSettingAuxClass' 
     SUP dlm1ElementSetting AUXILIARY 
     MAY ( dlmElementSettingElementRef $ 
           dlmElementSettingSettingRef ) 
   ) 
#     DESC 'ElementSetting represents the association between  
#          Managed SystemElements and the Setting class(es) 
#           defined for them.' 

## 3.24 DefaultSetting Classes 
## These classes represent the association between a ManagedSystemElement and the single 
## Setting class that is defined to be the default setting for this element.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.36
     NAME 'dlm1DefaultSetting' 
     SUP dlm1ElementSetting ABSTRACT 
   ) 
#     DESC 'DefaultSetting represents the association between  
#          a Managed SystemElement and the single Setting class 
#           that is defined to be the default setting for this 
#           Element.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.161
     NAME 'dlmDefaultSettingElementRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The ManagedSystemElement.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.162
     NAME 'dlmDefaultSettingSettingRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Setting object which is the default.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.37
     NAME 'dlm1DefaultSettingAuxClass' 
     SUP dlm1DefaultSetting AUXILIARY 
     MAY ( dlmDefaultSettingElementRef $ 
           dlmDefaultSettingSettingRef ) 
   ) 
#     DESC 'DefaultSetting represents the association between  
#          a Managed SystemElement and the single Setting class 
#           that is defined to be the default setting for this 
#           Element.' 

## 3.25 SettingContext Classes 
## These classes associate a setting with one or more configuration objects. For example, a 
## network adapter's settings could change based on the site/network to which its hosting 
## computer system is attached.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.38
     NAME 'dlm1SettingContext' 
     SUP top ABSTRACT 
   ) 
#     DESC 'This relationship associates Configuration 
#           objects with Setting objects. For example, a 
#           NetworkAdapter"s Settings could change based on the 
#           site/network to which its hosting ComputerSystem is 
#           attached. In this case, the ComputerSystem would have 
#           two different Configuration objects, corresponding to 
#           the differences in network configuration for the two 
#           network segments. Configuration A would aggregate a 
#           Setting object for the NetworkAdapter when operating 
#           on segment \"ANet\", whereas Configuration B would 
#           aggregate a different NetworkAdapter Setting object, 
#           specific to segment \"BNet\". Note that many Settings 
#           of the computer are independent of the network 
#           Configuration. For example, both Configurations A and 
#           B would aggregate the same Setting object for the 
#           ComputerSystem"s MonitorResolution.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.163
     NAME 'dlmSettingContextContextRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Configuration object that aggregates the 
#           Setting.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.164
     NAME 'dlmSettingContextSettingRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'An aggregated Setting.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.39
     NAME 'dlm1SettingContextAuxClass' 
     SUP dlm1SettingContext AUXILIARY 
     MAY ( dlmSettingContextContextRef $ 
           dlmSettingContextSettingRef ) 
   ) 
#     DESC 'This relationship associates Configuration 
#           objects with Setting objects. For example, a 
#           NetworkAdapter"s Settings could change based on the 
#           site/network to which its hosting ComputerSystem is 
#           attached. In this case, the ComputerSystem would have 
#           two different Configuration objects, corresponding to 
#           the differences in network configuration for the two 
#           network segments. Configuration A would aggregate a 
#           Setting object for the NetworkAdapter when operating 
#           on segment \"ANet\", whereas Configuration B would 
#           aggregate a different NetworkAdapter Setting object, 
#           specific to segment \"BNet\". Note that many Settings 
#           of the computer are independent of the network 
#           Configuration. For example, both Configurations A and 
#           B would aggregate the same Setting object for the 
#           ComputerSystem"s MonitorResolution.' 

## 3.26 CollectionSetting Classes 
## These classes represent the association between a CollectionOfMSEs class and the 
## Setting class(es) defined for them.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.40
     NAME 'dlm1CollectionSetting' 
     SUP top ABSTRACT 
   ) 
#     DESC 'CollectionSetting represents the association 
#           between a CollectionOfMSEs class and the Setting 
#           class(es) defined for them.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.165
     NAME 'dlmCollectionSettingCollectionRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The CollectionOfMSEs.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.166
     NAME 'dlmCollectionSettingSettingRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Setting object associated with the 
#           Collection.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.41
     NAME 'dlm1CollectionSettingAuxClass' 
     SUP dlm1CollectionSetting AUXILIARY 
     MAY ( dlmCollectionSettingCollectionRef $ 
           dlmCollectionSettingSettingRef ) 
   ) 
#     DESC 'CollectionSetting represents the association 
#           between a CollectionOfMSEs class and the Setting 
#           class(es) defined for them.' 

## 3.27 Dependency 
## This abstract class represents a generic association used to establish dependency 
## relationships between objects.  
 
objectclass   ( 1.3.6.1.4.1.412.100.2.1.3.42
     NAME 'dlm1Dependency' 
     SUP top ABSTRACT 
   ) 
#     DESC 'Dependency is a generic association used to 
#           establish dependency relationships between 
#           ManagedElements.' 

## 3.28 ServiceAccessBySAP Classes 
## These classes identify the access points for a service. For example, Netware, MacIntosh 
## or Windows service access points may access a printer, which may be hosted on different 
## system.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.43
     NAME 'dlm1ServiceAccessBySAP' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'ServiceAccessBySAP is an association that 
#           identifies the access points for a Service. For 
#           example, a printer may be accessed by Netware, 
#           MacIntosh or Windows ServiceAccess Points, potentially  
#          hosted on different Systems.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.167
     NAME 'dlmServiceAccessBySAPAntecedentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Service. ' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.168
     NAME 'dlmServiceAccessBySAPDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'An Access Point for a Service. Access points are 
#           dependent in this relationship since they have no 
#           function without a corresponding Service. ' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.44
     NAME 'dlm1ServiceAccessBySAPAuxClass' 
     SUP dlm1ServiceAccessBySAP AUXILIARY 
     MAY ( dlmServiceAccessBySAPAntecedentRef $ 
           dlmServiceAccessBySAPDependentRef ) 
   ) 
#     DESC 'ServiceAccessBySAP is an association that 
#           identifies the access points for a Service. For 
#           example, a printer may be accessed by Netware, 
#           MacIntosh or Windows ServiceAccess Points, potentially  
#          hosted on different Systems.' 

## 3.29 HostedService 
## This class maps the association between a Service and the System on which it resides.  
## While this could be represented with DIT containment, this class is provided to allow for 
## more general relationships. 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.45
     NAME 'dlm1HostedService' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'HostedService is an association between a Service  
#          and the System on which the functionality resides.  The  
#          cardinality of this association is 1-to-many.  A System  
#          may host many Services. Services are weak with respect 
#           to their hosting System. Heuristic:  A Service is 
#           hosted on the System where the LogicalDevices or 
#           SoftwareFeatures that implement the Service are 
#           located.  The model does not represent Services hosted  
#          across multiple systems.  This is modeled as an 
#           ApplicationSystem that acts as an aggregation point 
#           for Services, that are each located on a single host.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.169
     NAME 'dlmHostedServiceDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Service hosted on the System.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.170
     NAME 'dlmHostedServiceAntecedentRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The hosting System.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.46
     NAME 'dlm1HostedServiceAuxClass' 
     SUP dlm1HostedService AUXILIARY 
     MAY ( dlmHostedServiceDependentRef $ 
           dlmHostedServiceAntecedentRef ) 
   ) 
#     DESC 'HostedService is an association between a Service  
#          and the System on which the functionality resides.  The  
#          cardinality of this association is 1-to-many.  A System  
#          may host many Services. Services are weak with respect 
#           to their hosting System. Heuristic:  A Service is 
#           hosted on the System where the LogicalDevices or 
#           SoftwareFeatures that implement the Service are 
#           located.  The model does not represent Services hosted  
#          across multiple systems.  This is modeled as an 
#           ApplicationSystem that acts as an aggregation point 
#           for Services, that are each located on a single host.' 

## 3.30 HostedAccessPoint 
## These classes map an association between a ServiceAccessPoint and the System that 
## provides it.  Like HostedService, this is provided for more general representations than 
## what is available through DIT containment. 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.47
     NAME 'dlm1HostedAccessPoint' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'HostedAccessPoint is an association between a 
#           Service AccessPoint and the System on which it is 
#           provided.  The cardinality of this association is 
#           1-to-many and is weak with respect to the System. Each  
#          System may host many ServiceAccessPoints.  Heuristic:  
#           If the implementation of the ServiceAccessPoint is 
#           modeled, it must be implemented by a Device or 
#           SoftwareFeature that is part of the System hosting the  
#          ServiceAccessPoint.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.171
     NAME 'dlmHostedAccessPointDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The SAP(s) that are hosted on this System.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.172
     NAME 'dlmHostedAccessPointAntecedentRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The hosting System.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.48
     NAME 'dlm1HostedAccessPointAuxClass' 
     SUP dlm1HostedAccessPoint AUXILIARY 
     MAY ( dlmHostedAccessPointDependentRef $ 
           dlmHostedAccessPointAntecedentRef ) 
   ) 
#     DESC 'HostedAccessPoint is an association between a 
#           Service AccessPoint and the System on which it is 
#           provided.  The cardinality of this association is 
#           1-to-many and is weak with respect to the System. Each  
#          System may host many ServiceAccessPoints.  Heuristic:  
#           If the implementation of the ServiceAccessPoint is 
#           modeled, it must be implemented by a Device or 
#           SoftwareFeature that is part of the System hosting the  
#          ServiceAccessPoint.' 

## 3.31 ProvidesServiceToElement Classes 
## These classes map an association is used to describe that ManagedSystemElements may 
## be dependent on the functionality of one or more Services.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.49
     NAME 'dlm1ProvidesServiceToElement' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'ProvidesServiceToElement is used to describe that  
#          ManagedSystemElements may be dependent on the 
#           functionality of one or more Services. An example is 
#           that a Processor and an Enclosure (PhysicalElement) 
#           are dependent on AlertOn LAN Services to signal an 
#           incomplete or erroneous boot, and hardware-related 
#           errors.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.173
     NAME 'dlmProvidesServiceToElementDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The ManagedSystemElement dependent on the 
#           Service.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.174
     NAME 'dlmProvidesServiceToElementAntecedentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Service provided.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.50
     NAME 'dlm1ProvidesServiceToElementAuxClass' 
     SUP dlm1ProvidesServiceToElement AUXILIARY 
     MAY ( dlmProvidesServiceToElementDependentRef $ 
           dlmProvidesServiceToElementAntecedentRef ) 
   ) 
#     DESC 'ProvidesServiceToElement is used to describe that  
#          ManagedSystemElements may be dependent on the 
#           functionality of one or more Services. An example is 
#           that a Processor and an Enclosure (PhysicalElement) 
#           are dependent on AlertOn LAN Services to signal an 
#           incomplete or erroneous boot, and hardware-related 
#           errors.' 

## 3.32 ServiceServiceDependency Classes 
## These classes map an association between two services, showing that the latter is required 
## to be present, required to have completed, or must be absent for the former Service to 
## provide its functionality. For example, boot Services may be dependent on underlying 
## BIOS disk and initialization services. For initialization services, the boot service is 
## simply dependent on the initialization services completing.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.175
     NAME 'dlmRestartService' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'this property describes that the antecedent 
#           service must be restarted after the dependent 
#           operation is complete.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.176
     NAME 'dlmTypeOfDependency' 
     EQUALITY integerMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE 
   ) 
#     DESC 'The nature of the Service to Service dependency. 
#           This property describes that the associated Service 
#           must have completed (value=2), must be started (3) or 
#           must not be started (4) in order for the Service to 
#           function.  Values are 0="Unknown", 1="Other", 
#           2="Service Must Have Completed", 3="Service Must Be 
#           Started", 4="Service Must Not Be Started"' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.51
     NAME 'dlm1ServiceServiceDependency' 
     SUP dlm1ProvidesServiceToElement ABSTRACT 
     MAY ( dlmRestartService $ dlmTypeOfDependency ) 
   ) 
#     DESC 'ServiceServiceDependency is an association 
#           between a Service and another Service, indicating that  
#          the latter is required to be present, required to have 
#           completed, or must be absent for the former Service to  
#          provide its functionality. For example, Boot Services 
#           may be dependent upon underlying BIOS Disk and 
#           initialization Services. In the case of the 
#           initialization Services, the Boot Service is simply 
#           dependent on the init Services completing.  For the 
#           Disk Services, Boot Services may actually utilize the 
#           SAPs of this Service.  This usage dependency is 
#           modeled via the ServiceSAPDependency association.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.177
     NAME 'dlmServiceServiceDependencyAntecedentRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The required Service.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.178
     NAME 'dlmServiceServiceDependencyDependentRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Service that is dependent on an underlying 
#           Service.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.52
     NAME 'dlm1ServiceServiceDependencyInstance' 
     SUP dlm1ServiceServiceDependency  
     MAY ( dlmServiceServiceDependencyAntecedentRef $ 
           dlmServiceServiceDependencyDependentRef ) 
   ) 
#     DESC 'ServiceServiceDependency is an association 
#           between a Service and another Service, indicating that  
#          the latter is required to be present, required to have 
#           completed, or must be absent for the former Service to  
#          provide its functionality. For example, Boot Services 
#           may be dependent upon underlying BIOS Disk and 
#           initialization Services. In the case of the 
#           initialization Services, the Boot Service is simply 
#           dependent on the init Services completing.  For the 
#           Disk Services, Boot Services may actually utilize the 
#           SAPs of this Service.  This usage dependency is 
#           modeled via the ServiceSAPDependency association.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.5 NAME 'dlm1ServiceServiceDependencyInstanceNameForm1' 
#     OC dlm1ServiceServiceDependencyInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-5> NAME 'dlm1ServiceServiceDependencyInstanceStructureRule1' 
#     Form dlm1ServiceServiceDependencyInstanceNameForm1 
#   ) 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.179
     NAME 'dlmServiceServiceDependencyHelperRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'Pointer to ServiceServiceDependencyInstance.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.53
     NAME 'dlm1ServiceServiceDependencyHelper' 
     SUP top AUXILIARY 
         MAY ( dlmServiceServiceDependencyHelperRef ) 
   ) 
#     DESC 'Helper class for finding 
#           ServiceServiceDependency.' 
#LSB - dlmHelperRefToServiceServiceDependency is not defined in DSP0117
#LSB     MAY ( dlmHelperRefToServiceServiceDependency ) 
#LSB - Perhaps DSP0117's authors meant...

## 3.33 ServiceSAPDependency Classes 
## These classes map an association between a service and a service access point showing 
## that the referenced SAP is used by the service to provide its functionality. For example, 
## boot services may invoke BIOS disk services (interrupts) to function.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.54
     NAME 'dlm1ServiceSAPDependency' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'ServiceSAPDependency is an association between a 
#           Service and a ServiceAccessPoint indicating that the 
#           referenced SAP is utilized by the Service to provide 
#           its functionality. For example, Boot Services may 
#           invoke BIOS" Disk Services (interrupts) in order to 
#           function.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.180
     NAME 'dlmServiceSAPDependencyDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Service that is dependent on an underlying 
#           SAP.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.181
     NAME 'dlmServiceSAPDependencyAntecedentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The required ServiceAccessPoint' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.55
     NAME 'dlm1ServiceSAPDependencyAuxClass' 
     SUP dlm1ServiceSAPDependency AUXILIARY 
     MAY ( dlmServiceSAPDependencyDependentRef $ 
           dlmServiceSAPDependencyAntecedentRef ) 
   ) 
#     DESC 'ServiceSAPDependency is an association between a 
#           Service and a ServiceAccessPoint indicating that the 
#           referenced SAP is utilized by the Service to provide 
#           its functionality. For example, Boot Services may 
#           invoke BIOS" Disk Services (interrupts) in order to 
#           function.' 

## 3.34 SAPSAPDependency Classes 
## These classes model an association between two service access points showing that the 
## latter is required in order for the former to use or connect with its service. For example, to 
## print at a network printer, local print access points must use underlying network-related 
## SAPs, or protocol endpoints, to send the print request.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.56
     NAME 'dlm1SAPSAPDependency' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'SAPSAPDependency is an association between a 
#           Service AccessPoint and another ServiceAccessPoint 
#           indicating that the latter is required in order for 
#           the former ServiceAccess Point to utilize or connect 
#           with its Service. For example, to print at a network 
#           printer, local Print Access Points must utilize 
#           underlying network-related SAPs, or ProtocolEndpoints,  
#          in order to send the print request.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.182
     NAME 'dlmSAPSAPDependencyAntecedentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The required ServiceAccessPoint.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.183
     NAME 'dlmSAPSAPDependencyDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The ServiceAccessPoint that is dependent on an 
#           underlying SAP.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.57
     NAME 'dlm1SAPSAPDependencyAuxClass' 
     SUP dlm1SAPSAPDependency AUXILIARY 
     MAY ( dlmSAPSAPDependencyAntecedentRef $ 
           dlmSAPSAPDependencyDependentRef ) 
   ) 
#     DESC 'SAPSAPDependency is an association between a 
#           Service AccessPoint and another ServiceAccessPoint 
#           indicating that the latter is required in order for 
#           the former ServiceAccess Point to utilize or connect 
#           with its Service. For example, to print at a network 
#           printer, local Print Access Points must utilize 
#           underlying network-related SAPs, or ProtocolEndpoints,  
#          in order to send the print request.' 

## 3.35 Realizes Classes 
## These classes define the mapping between a logical device and the physical component 
## that implements the device.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.58
     NAME 'dlm1Realizes' 
     SUP dlm1Dependency ABSTRACT 
   ) 
#     DESC 'Realizes is the association that defines the 
#           mapping between a Logical Device and the physical 
#           component that implements the Device.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.184
     NAME 'dlmRealizesDependentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The LogicalDevice.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.185
     NAME 'dlmRealizesAntecedentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The physical component that implements the 
#           Device.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.59
     NAME 'dlm1RealizesAuxClass' 
     SUP dlm1Realizes AUXILIARY 
     MAY ( dlmRealizesDependentRef $ 
           dlmRealizesAntecedentRef ) 
   ) 
#     DESC 'Realizes is the association that defines the 
#           mapping between a Logical Device and the physical 
#           component that implements the Device.' 

## 3.36 MemberOfCollection Classes 
## These classes establish membership of ManagedElement objects in a collection.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.60
     NAME 'dlm1MemberOfCollection' 
     SUP top ABSTRACT 
   ) 
#     DESC 'MemberOfCollection is an aggregation used to 
#           establish membership of ManagedElements in a 
#           Collection.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.186
     NAME 'dlmMemberOfCollectionCollectionRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Collection that aggregates members' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.187
     NAME 'dlmMemberOfCollectionMemberRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The aggregated member of the collection.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.61
     NAME 'dlm1MemberOfCollectionAuxClass' 
     SUP dlm1MemberOfCollection AUXILIARY 
     MAY ( dlmMemberOfCollectionCollectionRef $ 
           dlmMemberOfCollectionMemberRef ) 
   ) 
#     DESC 'MemberOfCollection is an aggregation used to 
#           establish membership of ManagedElements in a 
#           Collection.' 

## 3.37 CollectedMSEs Classes 
## These classes represent a generic association used to establish the members of the 
## grouping object, CollectionOfMSEs.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.62
     NAME 'dlm1CollectedMSEs' 
     SUP dlm1MemberOfCollection ABSTRACT 
   ) 
#     DESC 'CollectedMSEs is a generic association used to 
#           establish the members of the grouping object, 
#           CollectionOf MSEs.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.188
     NAME 'dlmCollectedMSEsCollectionRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The grouping or "bag" object that represents the 
#           Collection.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.189
     NAME 'dlmCollectedMSEsMemberRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The members of the Collection.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.63
     NAME 'dlm1CollectedMSEsAuxClass' 
     SUP dlm1CollectedMSEs AUXILIARY 
     MAY ( dlmCollectedMSEsCollectionRef $ 
           dlmCollectedMSEsMemberRef ) 
   ) 
#     DESC 'CollectedMSEs is a generic association used to 
#           establish the members of the grouping object, 
#           CollectionOf MSEs.' 

## 3.38 Component 
## This abstract class maps a generic association used to establish 'part of' relationships 
## between managed system elements. For example, the system component association 
## defines parts of a system.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.64
     NAME 'dlm1Component' 
     SUP top ABSTRACT 
   ) 
#     DESC 'Component is a generic association used to 
#           establish "part of" relationships between Managed 
#           System Elements. For example, the SystemComponent 
#           association defines parts of a System.' 

## 3.39 SystemComponent Classes 
## These classes specialize dlmComponent to establish relationships between a system and 
## the managed system elements of which it is composed.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.65
     NAME 'dlm1SystemComponent' 
     SUP dlm1Component ABSTRACT 
   ) 
#     DESC 'SystemComponent is a specialization of the 
#           Component association that establishes "part of" 
#           relationships between a System and the Managed System 
#           Elements of which it is composed.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.190
     NAME 'dlmSystemComponentPartComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The child element that is a component of a 
#           System.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.191
     NAME 'dlmSystemComponentGroupComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The parent System in the Association.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.66
     NAME 'dlm1SystemComponentAuxClass' 
     SUP dlm1SystemComponent AUXILIARY 
     MAY ( dlmSystemComponentPartComponentRef $ 
           dlmSystemComponentGroupComponentRef ) 
   ) 
#     DESC 'SystemComponent is a specialization of the 
#           Component association that establishes "part of" 
#           relationships between a System and the Managed System 
#           Elements of which it is composed.' 

## 3.40 SystemDevice Classes 
## These classes model the aggregation of a LogicalDevices by a System. 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.67
     NAME 'dlm1SystemDevice' 
     SUP dlm1SystemComponent ABSTRACT 
   ) 
#     DESC 'LogicalDevices may be aggregated by a System.  
#           This relationship is made explicit by the SystemDevice  
#          association. ' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.192
     NAME 'dlmSystemDevicePartComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The LogicalDevice that is a component of a 
#           System.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.193
     NAME 'dlmSystemDeviceGroupComponentRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The parent system in the Association.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.68
     NAME 'dlm1SystemDeviceAuxClass' 
     SUP dlm1SystemDevice AUXILIARY 
     MAY ( dlmSystemDevicePartComponentRef $ 
           dlmSystemDeviceGroupComponentRef ) 
   ) 
#     DESC 'LogicalDevices may be aggregated by a System.  
#           This relationship is made explicit by the SystemDevice  
#          association. ' 

## 3.41 ServiceComponent Classes 
## These classes model a set of subordinate services that are aggregated together to form a 
## higher-level service.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.69
     NAME 'dlm1ServiceComponent' 
     SUP dlm1Component ABSTRACT 
   ) 
#     DESC 'The ServiceComponent aggregation models a set of 
#           subordinate Services that are aggregated together to 
#           form a higher-level service.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.194
     NAME 'dlmServiceComponentGroupComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The parent Service.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.195
     NAME 'dlmServiceComponentPartComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The component Service.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.70
     NAME 'dlm1ServiceComponentAuxClass' 
     SUP dlm1ServiceComponent AUXILIARY 
     MAY ( dlmServiceComponentGroupComponentRef $ 
           dlmServiceComponentPartComponentRef ) 
   ) 
#     DESC 'The ServiceComponent aggregation models a set of 
#           subordinate Services that are aggregated together to 
#           form a higher-level service.' 

## 3.42 ProductParentChild Classes 
## These classes define a parent child hierarchy among products. For example, a product 
## may come bundled with other products.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.71
     NAME 'dlm1ProductParentChild' 
     SUP top ABSTRACT 
   ) 
#     DESC 'The ProductParentChild association defines a 
#           parent child hierarchy among Products.  For example, a  
#          Product may come bundled with other Products. ' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.196
     NAME 'dlmProductParentChildChildRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The child Product in the association.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.197
     NAME 'dlmProductParentChildParentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The parent Product in the association.' 
 
objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.72
     NAME 'dlm1ProductParentChildAuxClass' 
     SUP dlm1ProductParentChild AUXILIARY 
     MAY ( dlmProductParentChildChildRef $ 
           dlmProductParentChildParentRef ) 
   ) 
#     DESC 'The ProductParentChild association defines a 
#           parent child hierarchy among Products.  For example, a  
#          Product may come bundled with other Products. ' 

## 3.43 CompatibleProduct Classes 
## These classes model an association between products can show a wide variety of 
## information. For example, it can show that the two referenced products interoperate, that 
## they can be installed together, that one can be the physical container for the other, etc.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.198
     NAME 'dlmCompatibilityDescription' 
     EQUALITY caseIgnoreMatch
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE 
   ) 
#     DESC 'CompatibilityDescription is a free-form string 
#           defining how the two referenced Products interoperate 
#           or are compatible, any limitations to compatibility, 
#           etc.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.73
     NAME 'dlm1CompatibleProduct' 
     SUP top ABSTRACT 
     MAY ( dlmCompatibilityDescription ) 
   ) 
#     DESC 'CompatibleProduct is an association between 
#           Products that can indicate a wide variety of 
#           information. For example, it can indicate that the two  
#          referenced Products interoperate, that they can be 
#           installed together, that one can be the physical 
#           container for the other, etc. The string property, 
#           CompatibilityDescription, defines how the Products 
#           interoperate or are compatible, any limitations 
#           regarding interoperability or installation, ...' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.199
     NAME 'dlmCompatibleProductCompatibleProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The compatible Product.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.200
     NAME 'dlmCompatibleProductProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Product for which compatible offerings are 
#           defined.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.74
     NAME 'dlm1CompatibleProductInstance' 
     SUP dlm1CompatibleProduct  
     MAY ( dlmCompatibleProductCompatibleProductRef $ 
           dlmCompatibleProductProductRef ) 
   ) 
#     DESC 'CompatibleProduct is an association between 
#           Products that can indicate a wide variety of 
#           information. For example, it can indicate that the two  
#          referenced Products interoperate, that they can be 
#           installed together, that one can be the physical 
#           container for the other, etc. The string property, 
#           CompatibilityDescription, defines how the Products 
#           interoperate or are compatible, any limitations 
#           regarding interoperability or installation, ...' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.6 NAME 'dlm1CompatibleProductInstanceNameForm1' 
#     OC dlm1CompatibleProductInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-6> NAME 'dlm1CompatibleProductInstanceStructureRule1' 
#     Form dlm1CompatibleProductInstanceNameForm1 
#   ) 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.201
     NAME 'dlmCompatibleProductHelperRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'Pointer to CompatibleProductInstance.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.75
     NAME 'dlm1CompatibleProductHelper' 
     SUP top AUXILIARY 
     MAY ( dlmCompatibleProductHelperRef ) 
   ) 
#     DESC 'Helper class for finding CompatibleProduct.' 
#LSB - dlmHelperRefToCompatibleProduct is not defined in DSP0117
#LSB MAY ( dlmHelperRefToCompatibleProduct ) 
#LSB - Perhaps DSP0117's authors meant...

## 3.44 ProductProductDependency Classes 
## These classes model an association between two products, showing that one must be 
## installed, or must be absent, for the other to function. This is conceptually equivalent to 
## the service to service dependency association.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.76
     NAME 'dlm1ProductProductDependency' 
     SUP top ABSTRACT 
     MAY ( dlmTypeOfDependency ) 
   ) 
#     DESC 'ProductProductDependency is an association 
#           between two Products, indicating that one must be 
#           installed, or must be absent, for the other to 
#           function. This is conceptually equivalent to the 
#           ServiceServiceDependency association.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.202
     NAME 'dlmProductProductDependencyDependentProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Product that is dependent on another Product.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.203
     NAME 'dlmProductProductDependencyRequiredProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The required Product.' 
#LSB - added matching rule
 
objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.77
     NAME 'dlm1ProductProductDependencyInstance' 
     SUP dlm1ProductProductDependency  
     MAY ( dlmProductProductDependencyDependentProductRef $ 
           dlmProductProductDependencyRequiredProductRef ) 
   ) 
#     DESC 'ProductProductDependency is an association 
#           between two Products, indicating that one must be 
#           installed, or must be absent, for the other to 
#           function. This is conceptually equivalent to the 
#           ServiceServiceDependency association.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.7 NAME 'dlm1ProductProductDependencyInstanceNameForm1' 
#     OC dlm1ProductProductDependencyInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-7> NAME 'dlm1ProductProductDependencyInstanceStructureRule1' 
#     Form dlm1ProductProductDependencyInstanceNameForm1 
#   ) 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.204
     NAME 'dlmProductProductDependencyHelperRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'Pointer to ProductProductDependencyInstance.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.78
     NAME 'dlm1ProductProductDependencyHelper' 
     SUP top AUXILIARY 
     MAY ( dlmProductProductDependencyHelperRef ) 
   ) 
#     DESC 'Helper class for finding 
#           ProductProductDependency.' 
#LSB - dlmHelperRefToProductProductDependency is not defined in DSP0117
#LSB MAY ( dlmHelperRefToProductProductDependency ) 
#LSB - Perhaps DSP0117's authors meant...

## 3.45 ProductSupport Classes 
## This classes represent the association between products and support access that conveys 
## how support is obtained for the product. This is a many-to-many relationship, implying 
## that various types of support are available for a product, and that the same support object 
## can provide help for multiple products. This class defines two attributes that are self-
## explanatory.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.79
     NAME 'dlm1ProductSupport' 
     SUP top ABSTRACT 
   ) 
#     DESC 'ProductSupport is an association between Product 
#           and SupportAccess that conveys how support is obtained  
#          for the Product.  This is a many-to-many relationship, 
#           implying that various types of Support are available 
#           for a Product, and that the same Support object can 
#           provide assistance for multiple Products.' 
 
attributetype    ( 1.3.6.1.4.1.412.100.2.2.205
     NAME 'dlmProductSupportProductRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Product.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.206
     NAME 'dlmProductSupportSupportRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'Support for the Product.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.80
     NAME 'dlm1ProductSupportAuxClass' 
     SUP dlm1ProductSupport AUXILIARY 
     MAY ( dlmProductSupportProductRef $ 
           dlmProductSupportSupportRef ) 
   ) 
#     DESC 'ProductSupport is an association between Product 
#           and SupportAccess that conveys how support is obtained  
#          for the Product.  This is a many-to-many relationship, 
#           implying that various types of Support are available 
#           for a Product, and that the same Support object can 
#           provide assistance for multiple Products.' 

## 3.46 ProductFRU Classes 
## These classes provides information regarding what product components have been or are 
## being replaced.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.81
     NAME 'dlm1ProductFRU' 
     SUP top ABSTRACT 
   ) 
#     DESC 'ProductFRU is an association between Product and 
#           FRU that provides information regarding what Product 
#           components have been or are being replaced.  The 
#           association is one to many, conveying that a Product 
#           can have many FRUs, and that a particular instance of 
#           a FRU is only applied to one (instance of a) Product.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.207
     NAME 'dlmProductFRUFRURef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The FRU.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.208
     NAME 'dlmProductFRUProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Product to which the FRU is applied.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.82
     NAME 'dlm1ProductFRUAuxClass' 
     SUP dlm1ProductFRU AUXILIARY 
     MAY ( dlmProductFRUFRURef $ dlmProductFRUProductRef ) 
   ) 
#     DESC 'ProductFRU is an association between Product and 
#           FRU that provides information regarding what Product 
#           components have been or are being replaced.  The 
#           association is one to many, conveying that a Product 
#           can have many FRUs, and that a particular instance of 
#           a FRU is only applied to one (instance of a) Product.' 

## 3.47 ProductPhysicalElements Classes 
## These classes show the physical elements that make up a product.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.83
     NAME 'dlm1ProductPhysicalElements' 
     SUP top ABSTRACT 
   ) 
#     DESC 'Indicates the PhysicalElements that make up a 
#           Product.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.209
     NAME 'dlmProductPhysicalElementsComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The PhysicalElement which is a part of the 
#           Product.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.210
     NAME 'dlmProductPhysicalElementsProductRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The Product.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.84
     NAME 'dlm1ProductPhysicalElementsAuxClass' 
     SUP dlm1ProductPhysicalElements AUXILIARY 
     MAY ( dlmProductPhysicalElementsComponentRef $ 
           dlmProductPhysicalElementsProductRef ) 
   ) 
#     DESC 'Indicates the PhysicalElements that make up a 
#           Product.' 

## 3.48 FRUPhysicalElements Classes 
## These classes show the physical elements that make up a FRU.  

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.85
     NAME 'dlm1FRUPhysicalElements' 
     SUP top ABSTRACT 
   ) 
#     DESC 'Indicates the PhysicalElements that make up a 
#           FRU.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.211
     NAME 'dlmFRUPhysicalElementsFRURef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The FRU.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.212
     NAME 'dlmFRUPhysicalElementsComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The PhysicalElement which is a part of the FRU.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.86
     NAME 'dlm1FRUPhysicalElementsAuxClass' 
     SUP dlm1FRUPhysicalElements AUXILIARY 
     MAY ( dlmFRUPhysicalElementsFRURef $ 
           dlmFRUPhysicalElementsComponentRef ) 
   ) 
#     DESC 'Indicates the PhysicalElements that make up a 
#           FRU.' 

## 3.49 FRUIncludesProduct Classes 
## These classes show that a FRU may be composed of other product(s). 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.87
     NAME 'dlm1FRUIncludesProduct' 
     SUP top ABSTRACT 
   ) 
#     DESC 'Indicates that a FRU may be composed of other 
#           Product(s).' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.213
     NAME 'dlmFRUIncludesProductFRURef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'The FRU.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.214
     NAME 'dlmFRUIncludesProductComponentRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'The Product which is a part of the FRU.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.88
     NAME 'dlm1FRUIncludesProductAuxClass' 
     SUP dlm1FRUIncludesProduct AUXILIARY 
     MAY ( dlmFRUIncludesProductFRURef $ 
           dlmFRUIncludesProductComponentRef ) 
   ) 
#     DESC 'Indicates that a FRU may be composed of other 
#           Product(s).' 

## 3.50 Synchronized Classes 
## These classes indicate that two logical elements were aligned or made to be equivalent at 
## the specified point in time. Preservation of synchronization is determined by the value of 
## the dlmSyncMaintained attribute.  

attributetype    ( 1.3.6.1.4.1.412.100.2.2.215
     NAME 'dlmSyncMaintained' 
     EQUALITY booleanMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE 
   ) 
#     DESC 'Boolean indicating whether synchronization is 
#           maintained.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.216
     NAME 'dlmWhenSynced' 
     EQUALITY generalizedTimeMatch
     ORDERING generalizedTimeOrderingMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE 
   ) 
#     DESC 'The point in time that the Elements were 
#           synchronized.' 
#LSB - added matching rules

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.89
     NAME 'dlm1Synchronized' 
     SUP top ABSTRACT 
     MAY ( dlmSyncMaintained $ dlmWhenSynced ) 
   ) 
#     DESC 'Indicates that two LogicalElements were aligned 
#           or made to be equivalent at the specified point in 
#           time. If the boolean property SyncMaintained is TRUE, 
#           then synchronization of the Elements is preserved. 
#           Both like and unlike objects may be synchronized. For 
#           example, two WatchDog timers may be aligned, or the 
#           contents of a LogicalFile may be synchronized with the  
#          contents of a StorageExtent.' 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.217
     NAME 'dlmSynchronizedSyncedElementRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'SyncedElement represents another LogicalElement 
#           that is synchronized with the entity referenced as 
#           SystemElement.' 
#LSB - added matching rule

attributetype    ( 1.3.6.1.4.1.412.100.2.2.218
     NAME 'dlmSynchronizedSystemElementRef' 
     EQUALITY distinguishedNameMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE 
   ) 
#     DESC 'SystemElement represents one LogicalElement that 
#           is synchronized with the entity referenced as 
#           SyncedElement.' 
#LSB - added matching rule

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.90
     NAME 'dlm1SynchronizedInstance' 
     SUP dlm1Synchronized  
     MAY ( dlmSynchronizedSyncedElementRef $ 
           dlmSynchronizedSystemElementRef ) 
   ) 
#     DESC 'Indicates that two LogicalElements were aligned 
#           or made to be equivalent at the specified point in 
#           time. If the boolean property SyncMaintained is TRUE, 
#           then synchronization of the Elements is preserved. 
#           Both like and unlike objects may be synchronized. For 
#           example, two WatchDog timers may be aligned, or the 
#           contents of a LogicalFile may be synchronized with the  
#          contents of a StorageExtent.' 

#    ( 1.3.6.1.4.1.412.100.2.3.3.8 NAME 'dlm1SynchronizedInstanceNameForm1' 
#     OC dlm1SynchronizedInstance 
#     MUST ( orderedCimKeys ) 
#   ) 
#    ( <core-sr-8> NAME 'dlm1SynchronizedInstanceStructureRule1' 
#     Form dlm1SynchronizedInstanceNameForm1 
#   ) 

attributetype    ( 1.3.6.1.4.1.412.100.2.2.219
     NAME 'dlmSynchronizedHelperRef' 
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 
     EQUALITY distinguishedNameMatch 
   ) 
#     DESC 'Pointer to SynchronizedInstance.' 

objectclass    ( 1.3.6.1.4.1.412.100.2.1.3.91
     NAME 'dlm1SynchronizedHelper' 
     SUP top AUXILIARY 
     MAY ( dlmSynchronizedHelperRef ) 
   ) 
#     DESC 'Helper class for finding Synchronized.'