// Copyright (c) 2009 DMTF.  All rights reserved.
   [Abstract, Version ( "2.19.0" ), 
    UMLPackagePath ( "CIM::Core::CoreElements" ), 
    Description ( 
       "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." )]
class CIM_ManagedElement {

      [Description ( 
          "InstanceID is an optional property that may be used to "
          "opaquely and uniquely identify an instance of this class "
          "within the scope of the instantiating Namespace. Various "
          "subclasses of this class may override this property to "
          "make it required, or a key. Such subclasses may also "
          "modify the preferred algorithms for ensuring uniqueness "
          "that are defined below.\n"
          "To ensure uniqueness within the NameSpace, the value of "
          "InstanceID should be constructed using the following "
          "\"preferred\" algorithm: \n"
          "<OrgID>:<LocalID> \n"
          "Where <OrgID> and <LocalID> are separated by a colon "
          "(:), and where <OrgID> must include a copyrighted, "
          "trademarked, or otherwise unique name that is owned by "
          "the business entity that is creating or defining the "
          "InstanceID or that is a registered ID assigned to the "
          "business entity by a recognized global authority. (This "
          "requirement is similar to the <Schema Name>_<Class Name> "
          "structure of Schema class names.) In addition, to ensure "
          "uniqueness, <OrgID> must not contain a colon (:). When "
          "using this algorithm, the first colon to appear in "
          "InstanceID must appear between <OrgID> and <LocalID>. \n"
          "<LocalID> is chosen by the business entity and should "
          "not be reused to identify different underlying "
          "(real-world) elements. If not null and the above "
          "\"preferred\" algorithm is not used, the defining entity "
          "must assure that the resulting InstanceID is not reused "
          "across any InstanceIDs produced by this or other "
          "providers for the NameSpace of this instance. \n"
          "If not set to null for DMTF-defined instances, the "
          "\"preferred\" algorithm must be used with the <OrgID> "
          "set to CIM." )]
   string InstanceID;

      [Description ( 
          "The Caption property is a short textual description "
          "(one- line string) of the object." ), 
       MaxLen ( 64 )]
   string Caption;

      [Description ( 
          "The Description property provides a textual description "
          "of the object." )]
   string Description;

      [Description ( 
          "A user-friendly name for the object. This property "
          "allows each instance to define a user-friendly name in "
          "addition to its key properties, identity data, and "
          "description information. \n"
          "Note that the Name property of ManagedSystemElement is "
          "also defined as a user-friendly name. But, it is often "
          "subclassed to be a Key. It is not reasonable that the "
          "same property can convey both identity and a "
          "user-friendly name, without inconsistencies. Where Name "
          "exists and is not a Key (such as for instances of "
          "LogicalDevice), the same information can be present in "
          "both the Name and ElementName properties. Note that if "
          "there is an associated instance of "
          "CIM_EnabledLogicalElementCapabilities, restrictions on "
          "this properties may exist as defined in ElementNameMask "
          "and MaxElementNameLen properties defined in that class." )]
   string ElementName;


};
