// Copyright (c) 1997-2003 Microsoft Corporation, All Rights Reserved

#pragma autorecover
#pragma classflags(64)
#pragma namespace("\\\\.\\Root\\Interop")
instance of __namespace{ name="ms_804";};
#pragma namespace("\\\\.\\Root\\Interop\\ms_804")

[Description("CIM_ElementConformsToProfile 关联对引用的 ManagedElement 所符合的 RegisteredProfiles 进行定义。请注意：此关联可应用于任何托管元素。典型用法是将其应用于较高级别的实例，如系统、命名空间或服务。当应用于较高级别的实例时，所有组成部分的行为必须适当，才能支持 ManagedElement 与命名 RegisteredProfile 的一致性。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_ElementConformsToProfile
{
  [Key : ToSubclass DisableOverride,Description("ManagedElement 所符合的 RegisteredProfile。") : Amended ToSubclass] CIM_RegisteredProfile Ref ConformantStandard;
  [Key : ToSubclass DisableOverride,Description("符合 RegisteredProfile 的 ManagedElement。") : Amended ToSubclass] CIM_ManagedElement Ref ManagedElement;
};

[Description("ManagedElement 是一个抽象类，为 CIM 架构中的非关联类提供一个公共超类(即继承树的顶部)。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_ManagedElement
{
  [Description("InstanceID 是一个可选属性，可用于在实例化命名空间的作用域内不透明地并唯一地标识此类的实例。此类的各种子类可能会替代此属性，使其成为必要属性或键。这些子类可能还会修改首选算法，以确保唯一性(如下方所定义)。\n为确保在命名空间内的唯一性，InstanceID 的值应使用以下“首选”算法来构造: \n<OrgID>:<LocalID> \n其中，<OrgID> 和 <LocalID> 以冒号(:)分隔，并且 <OrgID> 中必须包含版权、商标或是由创建或定义此 InstanceID 的商业实体所拥有的其他唯一性名称，或者是一个由公认的世界权威机构向该商业实体分配的注册 ID。(此要求与 Schema 类名称的 <Schema 名称>_<类名称> 结构类似。)此外，要确保唯一性，<OrgID> 不能包含冒号(:)。在使用此算法时，InstanceID 中的第一个冒号必须位于 <OrgID> 和 <LocalID> 之间。\n<LocalID> 由商业实体选择，不得再用于标识其他基础(即现实生活中的)元素。如果不为空并且不使用上述“首选”算法，则负责定义的实体必须保证，在此提供程序或任何其他提供程序为此实例命名空间创建的任何 InstanceID 中，均不会重复使用最终构造的 InstanceID。\n如果对于 DMTF 定义的实例未设置为空，则必须使用“首选”算法，并且将 <OrgID> 设置为 CIM。") : Amended ToSubclass] string InstanceID;
  [Description("Caption 属性是关于对象的简短文字描述(只有一行的字符串)。") : Amended ToSubclass] string Caption;
  [Description("Description 属性提供关于对象的文字描述。") : Amended ToSubclass] string Description;
  [Description("对象的用户友好名称。此属性允许每个实例在其键属性、标识数据和描述信息之外定义一个用户友好名称。\n请注意，ManagedSystemElement 的 Name 属性也被定义为用户友好名称。但是，该属性通常被分类为密钥子类。正常情况下，同一属性无法在不引起任何不一致的情况下既标识身份又充当用户友好名称。如果存在 Name 属性并且其不是键属性(如 LogicalDevice 的实例)，则 Name 属性和 ElementName 属性中可显示相同的信息。") : Amended ToSubclass] string ElementName;
};

[Description("RegisteredProfile 描述一组包含必要属性和/或方法的 CIM Schema 类，这些类对于采用交互方式管理现实实体或支持使用场景是必要的。RegisteredProfiles 可以由 DMTF 定义，也可以由其他标准机构定义。请注意，不应将此类与 CIM_Profile 混淆，CIM_Profile 用于收集用作元素“配置文件”的 SettingData 实例。\nRegisteredProfile 是专为实现一组特定用途的特定系统、子系统、服务或其他实体而设的基于 CIM 的管理指定“标准”。它是一个完整、独立的定义，这与子类 RegisteredSubProfile 不同，后者需要一个作用域配置文件提供上下文。\n用户必须在定义该配置文件的文档中指定 RegisteredProfile 或 SubProfile 的用法。典型的配置文件用于管理操作系统、存储阵列或数据库的各个方面。该配置文件的名称由其编写机构定义和限定。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_RegisteredProfile : CIM_ManagedElement
{
  [Key : ToSubclass DisableOverride,Description("在实例化命名空间的作用域内，InstanceID 不透明地并唯一地标识此类的实例。为确保在命名空间内的唯一性，InstanceID 的值应使用以下“首选”算法来构造: \n<OrgID>:<LocalID> \n其中 <OrgID> 和 <LocalID> 以冒号“:”分隔，并且 <OrgID> 中必须包含版权、商标或是由创建/定义此 InstanceID 的商业实体所拥有的其他唯一性名称，或者是一个由公认的世界权威机构分配向该商业实体分配的注册 ID。(这与 Schema 类名称的 <Schema 名称>_<类名称> 结构类似。)此外，为确保唯一性，<OrgID> 不得含有冒号(“:”)。在使用此算法时，InstanceID 中的第一个冒号必须位于 <OrgID> 和 <LocalID> 之间。\n<LocalID> 由组织实体选择，不得再用于标识其他基础(即现实生活中的)元素。如果未使用上述“首选”算法，则负责定义的实体必须保证，在此提供商或任何其他提供商为此实例命名空间创建的任何 InstanceID 中，均不会重复使用最终构造的 InstanceID。\n对于 DMTF 定义的实例，使用“首选”算法时必须将 <OrgID> 设置为“CIM”。") : Amended ToSubclass] string InstanceID;
  [Description("定义此配置文件的组织。") : Amended ToSubclass,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", ".."} : Amended ToSubclass,Values{"其他", "DMTF", "CompTIA", "Consortium for Service Innovation", "FAST", "GGF", "INTAP", "itSMF", "NAC", "Northwest Energy Efficiency Alliance", "SNIA", "TM Forum", "The Open Group", "ANSI", "IEEE", "IETF", "INCITS", "ISO", "W3C", "OGF", "DMTF 保留"} : Amended ToSubclass] uint16 RegisteredOrganization;
  [Description("将 RegisteredOrganization 指定为 1 (“其他”)时，对该组织进行描述的一个自由格式字符串。") : Amended ToSubclass] string OtherRegisteredOrganization;
  [Description("此注册配置文件的名称。由于同一 RegisteredName 可能存在多个版本，RegisteredName、RegisteredOrganization 和 RegisteredVersion 组合必须唯一，用以识别组织作用域内的注册配置文件。") : Amended ToSubclass] string RegisteredName;
  [Description("此配置文件的版本。表示版本的字符串必须采用以下格式: \nM + \".\" + N + \".\" + U \n其中: \nM - 描述配置文件创建时或最近一次修改时的主要版本(格式为数字)。\nN - 描述配置文件创建时或最近一次修改时的次要版本(格式为数字)。\nU - 描述配置文件创建时或最近一次修改时的更新(例如勘误表、修补程序等，格式为数字)。") : Amended ToSubclass] string RegisteredVersion;
  [Description("此属性表示配置文件信息的播发。它由 WBEM 基础结构的播发服务使用，以确定应播发的内容和采用的机制。该属性是一个数组，这样即可使用多个机制播发该配置文件。注意: 如果此属性为空/未初始化，则相当于指定值 2“不播发”。") : Amended ToSubclass,ValueMap{"1", "2", "3"} : Amended ToSubclass,Values{"其他", "不播发", "SLP"} : Amended ToSubclass] uint16 AdvertiseTypes[];
  [Description("一个自由格式字符串，提供与 AdvertiseType 相关的额外信息。当 AdvertiseType 为 1“其他”时，必须提供描述。此数组中的条目对应于 AdvertiseTypes 数组中在同一索引的条目。如果类型设置为“不播发”或“SLP”，将不需要额外描述。不过，随着 SLP 模板的展开或者随着其他播发机制被定义，可能需要支持额外描述。定义此数组就是为了在此情况下提供支持。") : Amended ToSubclass] string AdvertiseTypeDescriptions[];
};

[Description("CIM_Dependency 是一种用于在 ManagedElement 之间建立依赖关系的普通关联。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_Dependency
{
  [Key : ToSubclass DisableOverride,Description("Antecedent 表示该关联中的独立对象。") : Amended ToSubclass] CIM_ManagedElement Ref Antecedent;
  [Key : ToSubclass DisableOverride,Description("Dependent 表示依赖于 Antecedent 的对象。") : Amended ToSubclass] CIM_ManagedElement Ref Dependent;
};

[Description("另一个 RegisteredProfile 引用的配置文件。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_ReferencedProfile : CIM_Dependency
{
  [Description("依赖配置文件引用的 RegisteredProfile。") : Amended ToSubclass] CIM_RegisteredProfile Ref Antecedent;
  [Description("引用其他配置文件的 RegisteredProfile。") : Amended ToSubclass] CIM_RegisteredProfile Ref Dependent;
};

[Description("RegisteredSpecification 用于在 WBEM 服务器内播发实施规范。规范可以由 DMTF 制定，也可以由标准机构制定。在此上下文中，规范用于描述命名的版本约束集合。约束集合与发布约束集合的文档之间可以是一一对应。DMTF 发布其配置文件时采用的就是这种机制，堪称一一对应的典范。而 SNIA 发布 SMI-S 书籍则是一对多文档规范的典型示例。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804) : ToInstance] 
class CIM_RegisteredSpecification : CIM_ManagedElement
{
  [Key : ToSubclass DisableOverride,Description("在实例化 Namespace 的作用域内，InstanceID 以不透明的方式唯一标识此类的实例。为了确保在 NameSpace 中的唯一性，InstanceID 的值应使用下列“首选”算法构造: \n: \n以冒号“:”分隔，必须包括由创建/定义 InstanceID 的商业实体拥有的版权化、商标化或其他形式的唯一名称，或是由公认的全球性机构为商业实体分配的注册 ID (类似于 Schema 类名称的 _ 结构)。此外，为确保唯一性，不得含有冒号(\":\")。InstanceID 中的第一个冒号必须位于两者之间。由商业实体选择，不应反复用于标识不同的基础(实际)元素。\n对于 DMTF 定义的实例，应设置为 \"CIM\"。") : Amended ToSubclass] string InstanceID;
  [Description("规范类型。") : Amended ToSubclass,ValueMap{"1", "2", "3", "4", ".."} : Amended ToSubclass,Values{"其他", "配置文件", "创制包装器", "映射", "DMTF 保留"} : Amended ToSubclass] uint16 SpecificationType;
  [Description("如果将 SpecificationType 指定为 1 (“其他”)，OtherSpecificationType 将是一个对规范类型进行描述的自由格式字符串。") : Amended ToSubclass] string OtherSpecificationType;
  [Description("定义此规范的组织。\n\"The Green Grid\" (绿色网格)表示 \"The Green Grid Association\" (绿色网格联盟)") : Amended ToSubclass,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", ".."} : Amended ToSubclass,Values{"其他", "DMTF", "CompTIA", "Consortium for Service Innovation", "FAST", "GGF", "INTAP", "itSMF", "NAC", "Northwest Energy Efficiency Alliance", "SNIA", "TM Forum", "The Open Group", "ANSI", "IEEE", "IETF", "INCITS", "ISO", "W3C", "OGF", "The Green Grid", "DMTF 保留"} : Amended ToSubclass] uint16 RegisteredOrganization;
  [Description("如果将 RegisteredOrganization 指定为 1 (“其他”)，OtherRegisteredOrganization 将是一个对组织进行描述的自由格式字符串。") : Amended ToSubclass] string OtherRegisteredOrganization;
  [Description("此注册规范的名称。由于同一 RegisteredName 可能存在多个版本，RegisteredName、RegisteredOrganization 和 RegisteredVersion 组合必须唯一，用以识别组织作用域内的注册规范。\n此属性的值将对应于规范或标准为该版本约束集合命名的名称。该值不识别文档或发布媒体名称，除非该名称恰好与版本约束的名称相同。") : Amended ToSubclass] string RegisteredName;
  [Description("描述规范创建或上次修改的版本。表示版本的字符串格式应为:\nM + \".\" + N + \".\" + U \n其中: \nM - 主要版本(以数字形式表示)。\nN - 次要版本(以数字形式表示)。\nU - 更新(例如，勘误表、修补程序...，以数字形式表示)。") : Amended ToSubclass] string RegisteredVersion;
  [Description("此属性表示请求规范信息网络播发。WBEM 基础结构播发服务利用此属性确定应通过哪些机制播发哪些信息。该属性是数组，因此可以使用多种机制播发该规范。注意: 如果此属性为 null/未初始化，则相当于将其指定为值 2 (“不播发”)。") : Amended ToSubclass,ValueMap{"1", "2", "3", "4"} : Amended ToSubclass,Values{"其他", "不播发", "SLP", "WS-Identify"} : Amended ToSubclass] uint16 AdvertiseTypes[];
  [Description("一个用于提供其他 AdvertiseType 相关信息的自由格式字符串。每次显示 AdvertiseTypes 时均应提供描述。此数组中的条目对应于同一索引中 AdvertiseTypes 数组中的条目。如果将该类型设置为“不播发”或 \"SLP\"，则不需要提供额外描述。不过，随着扩展 SLP 模板或定义其他播发机制，可能需要支持其他描述。请定义该数组提供此类支持。") : Amended ToSubclass] string AdvertiseTypeDescriptions[];
};
