// Copyright (c) 2005 DMTF.  All rights reserved.
   [Association, Abstract, Version ( "2.8.1000" ), 
    UMLPackagePath ( "CIM::Device::ProtocolController" ), 
    Description ( 
       "This association indicates a subclass of LogicalDevice (for "
       "example a Storage Volume) is connected through a specific "
       "ProtocolController. In many situations (for example storage "
       "LUN masking), there may be many of these associations used to "
       "relate to different objects. Therefore subclasses have been "
       "defined to optimize enumeration of the associations." )]
class CIM_ProtocolControllerForDevice : CIM_Dependency {

      [Override ( "Antecedent" ), 
       Description ( "The ProtocolController." )]
   CIM_ProtocolController REF Antecedent;

      [Override ( "Dependent" ), 
       Description ( "The controlled Device." )]
   CIM_LogicalDevice REF Dependent;

      [Description ( 
          "Address of the associated Device in the context of the "
          "Antecedent Controller." )]
   string DeviceNumber;

      [Description ( 
          "This property describes the priority given to accesses "
          "of the device through this Controller. The highest "
          "priority path will have the lowest value for this "
          "parameter." )]
   uint16 AccessPriority;

      [Description ( 
          "The AccessState property describes the accessibility of "
          "the LogicalDevice through the ProtocolController. \n"
          "Unknown (0) indicates the instrumentation does not know "
          "whether access is or is not functioning. \n"
          "Active (2) indicates normal access. \n"
          "Inactive (3) indicates the instrumentation knows this "
          "path is not active, and one of the other values (below) "
          "does not apply. \n"
          "Replication in Progress (4) indicates that the path is "
          "temporarily inactive due to a replication activity. \n"
          "Mapping Inconsistency (5) indicates the instrumentation "
          "has detected that this path is inactive due to an "
          "inconsistency in the DeviceNumber/DeviceAccess "
          "configuration." ), 
       ValueMap { "0", "2", "3", "4", "5" }, 
       Values { "Unknown", "Active", "Inactive", 
          "Replication In Progress", "Mapping Inconsistency" }]
   uint16 AccessState;


};
