// Copyright (c) 2005 DMTF.  All rights reserved.
   [Association, Version ( "2.10.0" ), 
    UMLPackagePath ( "CIM::Core::CoreElements" ), 
    Description ( 
       "CIM_ConcreteDependency is a generic association used to "
       "establish dependency relationships between ManagedElements. It "
       "is defined as a concrete subclass of the abstract "
       "CIM_Dependency class, to be used in place of many specific "
       "subclasses of Dependency that add no semantics, that is "
       "subclasses that do not clarify the type of dependency, update "
       "cardinalities, or add or remove qualifiers. Note that when you "
       "define additional semantics for Dependency, this class must "
       "not be subclassed. Specific semantics continue to be defined "
       "as subclasses of the abstract CIM_Dependency. "
       "ConcreteDependency is limited in its use as a concrete form of "
       "a general dependency. \n"
       "\n"
       "It was deemed more prudent to create this concrete subclass "
       "than to change Dependency from an abstract to a concrete "
       "class. Dependency already had multiple abstract subclasses in "
       "the CIM Schema, and wider industry usage and impact could not "
       "be anticipated." )]
class CIM_ConcreteDependency : CIM_Dependency {

      [Override ( "Antecedent" ), 
       Description ( 
          "Antecedent represents the independent object in this association."
           )]
   CIM_ManagedElement REF Antecedent;

      [Override ( "Dependent" ), 
       Description ( 
          "Dependent represents the object that is dependent on the "
          "Antecedent." )]
   CIM_ManagedElement REF Dependent;


};
