// Copyright (c) 2007 DMTF.  All rights reserved.
   [Version ( "2.7.0" ), 
    UMLPackagePath ( "CIM::Metrics::UnitOfWork" ), 
    Description ( 
       "A LogicalElement that describes units of work (e.g. "
       "transactions). This class represents the definitional "
       "components of a unit of work, and not the unit itself." )]
class CIM_UnitOfWorkDefinition : CIM_LogicalElement {

      [Override ( "Name" ), 
       Description ( 
          "The name of the Definition. This name does not have to "
          "be unique, but should be descriptive. It may contain "
          "blanks." )]
   string Name;

      [Description ( 
          "A free format string describing the context of the "
          "defined UnitOfWork. For example an \'Add Order\' Unit "
          "could be defined in the context of a book ordering "
          "application, whereas another \'Add Order\' UnitOfWork "
          "could be defined for a computer ordering application. It "
          "may contain blanks." )]
   string Context;

      [Key, Description ( 
          "A 16 byte value that uniquely identifies the UnitOfWork "
          "Definition. The use of OSF UUID/GUIDs is recommended." ), 
       MaxLen ( 16 )]
   string Id;

      [Description ( 
          "A 16 byte value that uniquely identifies the applied "
          "semantics and format of the trace levels used in the "
          "instances of UnitOfWork. The use of OSF UUID/GUIDs is "
          "recommended. \n"
          "TraceLevelTypeId allows management applications to "
          "efficiently discriminate between different trace level "
          "semantics of different UnitOfWorkDefinitions. I.E., "
          "CIM_UnitOfWork.TraceLevel = 1 may have different "
          "semantics if TraceLevelTypeId is different for the "
          "respective instances of UnitOfWork. \n"
          "It is not assumed that different trace level semantics "
          "are used within the same UnitOfWorkDefinition in order "
          "to promote uniform trace level encodings. (Keep in mind: "
          "At least the developers of the business actions "
          "represented by the same UnitOfWorkDefinition instance "
          "should strive to use the same trace level encoding, "
          "otherwise the administrator will have a hard time to "
          "figure out what detailed information to expect.) \n"
          "If the string is empty no traces are expected to be "
          "produced. If the string is not empty, an associated "
          "instance of TraceLevelType may be attached to the "
          "UnitOfWorkDefinition instance. Still, it is useful to "
          "incorporate TraceLevelTypeId into UnitOfWorkDefinition, "
          "to relate to an instance of TraceLevelType. The "
          "management application can more easily detect different "
          "trace level types." ), 
       MaxLen ( 16 ), 
       ModelCorrespondence { "CIM_TraceLevelType.InstanceID" }]
   string TraceLevelTypeId;


};
