(file) Return to Core27_Collection.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIM27

  1 kumpf 1.2 // ===================================================================
  2           // Title:       Core Collections 2.7
  3           // Filename:    Core27_Collection.mof
  4           // Version:     2.7.0
  5           // Release:     Final
  6           // Date:        03/31/03
  7           // ===================================================================
  8           // Copyright 2000-2003 Distributed Management Task Force, Inc. (DMTF).
  9           // All rights reserved.  
 10           // DMTF is a not-for-profit association of industry members dedicated 
 11           // to promoting enterprise and systems management and interoperability. 
 12           // DMTF specifications and documents may be reproduced for uses
 13           // consistent with this purpose by members and non-members, 
 14           // provided that correct attribution is given. 
 15           // As DMTF specifications may be revised from time to time, 
 16           // the particular version and release date should always be noted.
 17           //
 18           // Implementation of certain elements of this standard or proposed 
 19           // standard may be subject to third party patent rights, including 
 20           // provisional patent rights (herein "patent rights"). DMTF makes 
 21           // no representations to users of the standard as to the existence 
 22 kumpf 1.2 // of such rights, and is not responsible to recognize, disclose, or
 23           // identify any or all such third party patent right, owners or 
 24           // claimants, nor for any incomplete or inaccurate identification or 
 25           // disclosure of such rights, owners or claimants. DMTF shall have no 
 26           // liability to any party, in any manner or circumstance, under any 
 27           // legal theory whatsoever, for failure to recognize, disclose, or 
 28           // identify any such third party patent rights, or for such party's
 29           // reliance on the standard or incorporation thereof in its product, 
 30           // protocols or testing procedures. DMTF shall have no liability to 
 31           // any party implementing such standard, whether such implementation 
 32           // is foreseeable or not, nor to any patent owner or claimant, and shall 
 33           // have no liability or responsibility for costs or losses incurred if 
 34           // a standard is withdrawn or modified after publication, and shall be
 35           // indemnified and held harmless by any party implementing the 
 36           // standard from any and all claims of infringement by a patent owner 
 37           // for such implementations.
 38           //
 39           // For information about patents held by third-parties which have 
 40           // notified the DMTF that, in their opinion, such patent may relate to 
 41           // or impact implementations of DMTF standards, visit 
 42           // http://www.dmtf.org/about/policies/disclosures.php.
 43 kumpf 1.2 // ===================================================================
 44           // Description: The Core Model defines basic management concepts. 
 45           //              This file defines the concepts and classes in support 
 46           //              of Collections.  
 47           //
 48           //              The object classes below are listed in an order that
 49           //              avoids forward references. Required objects, defined 
 50           //              by other working groups, are omitted.
 51           // ==================================================================
 52           // Change Log for v2.7
 53           // CR968 - Remove the Experimental qualifier
 54           //       - Keep RedundancySet, SparedSet, IsSpare, StorageRedundancySet,
 55           //         and ExtraCapacitySet experimental for 2.8
 56           // CR994 - Update description for InstanceID
 57           //
 58           // Change Log for v2.7
 59           // CR684 - Add SystemSpecificCollection and HostedCollection
 60           // CR760 - Add OrderedMemberOfCollection
 61           // ================================================================== 
 62           
 63           #pragma locale ("en_US")
 64 kumpf 1.2 
 65           
 66           // ==================================================================
 67           // Collection 
 68           // ================================================================== 
 69           [Abstract, Version ("2.6.0"), Description (   
 70               "Collection is an abstract class that provides a common "   
 71               "superclass for data elements that represent collections of "
 72               "ManagedElements and its subclasses.") ]
 73           class CIM_Collection : CIM_ManagedElement {   
 74           };
 75           
 76           
 77           // ==================================================================
 78           // MemberOfCollection    
 79           // ==================================================================
 80           [Association, Aggregation, Version ("2.6.0"), Description (   
 81               "CIM_MemberOfCollection is an aggregation used to establish "   
 82               "membership of ManagedElements in a Collection." ) ]  
 83           class CIM_MemberOfCollection {   
 84               
 85 kumpf 1.2     [Key, Aggregate, Description (
 86                   "The Collection that aggregates members.") ]    
 87               CIM_Collection REF Collection;
 88               
 89               [Key, Description (
 90                   "The aggregated member of the Collection.") ]    
 91               CIM_ManagedElement REF Member;   
 92           };   
 93           
 94           
 95           // ==============================================================
 96           // OrderedMemberOfCollection
 97           // ==============================================================
 98           [Association, Aggregation, Version ("2.7.0"), 
 99               Description (   
100               "CIM_OrderedMemberOfCollection is an aggregation used to "
101               "establish an ordered membership of ManagedElements in a "
102               "Collection." ) ]  
103           class CIM_OrderedMemberOfCollection : CIM_MemberOfCollection {   
104              
105               [Description (
106 kumpf 1.2         "AssignedSequence is an unsigned integer 'n' that indicates "
107                   "the relative position of members within a Collection.  When "
108                   "'n' is a positive integer, it indicates a place in the "
109                   "sequence of members, with smaller integers indicating earlier "
110                   "positions in the sequence.  The special value '0' indicates "
111                   "'don't care'.  If two or more members have the same non-zero "
112                   "sequence number, then the ordering between those members is "
113                   "irrelavent, but they must all be ordered at the appropriate "
114                   "place in the overall sequence.\n"
115                   "\n"
116                   "A series of examples will make ordering of members "
117                   "clearer: \n"
118                   "    o If all members have the same sequence number,\n"
119                   "      regardless of whether it is '0' or non-zero, any\n"
120                   "      order is acceptable.\n"
121                   "    o The values: \n"
122                   "          1:MEMBER A \n"
123                   "          2:MEMBER B \n"
124                   "          1:MEMBER C \n"
125                   "          3:MEMBER D \n"
126                   "      indicate two acceptable orders: A,C,B,D or C,A,B,D,\n"
127 kumpf 1.2         "      since A and C can be ordered in either sequence, but\n"
128                   "      only at the '1' position. \n"
129                   "\n"
130                   "Note that the non-zero sequence numbers need not start with "
131                   "'1', and they need not be consecutive.  All that matters is "
132                   "their relative magnitude.") ]
133               uint64 AssignedSequence;
134           };
135           
136           
137           // ==================================================================
138           // SystemSpecificCollection
139           // ================================================================== 
140           [Version ("2.7.0"), Description (   
141               "   SystemSpecificCollection represents the general "
142               "concept of a collection which is scoped (or contained) by a "
143               "System. It represents a Collection that only has meaning "
144               "in the context of a System, and/or whose elements are "
145               "restricted by the definition of the System. This is explicitly "
146               "described by the (required) association, HostedCollection. \n"
147               "   An example of a SystemSpecificCollection is a "
148 kumpf 1.2     "Fibre Channel zone that collects network ports, port "
149               "groupings and aliases (as required by a customer) in the "
150               "context of an AdminDomain.  The Collection is not a part "
151               "of the domain, but merely an arbitrary grouping of the devices "
152               "and other Collections in the domain.  In other words, the "
153               "context of the Collection is restricted to the domain, and its "
154               "members are also limited by the domain.") ]
155           class CIM_SystemSpecificCollection : CIM_Collection {
156           
157               [Key, Description (
158                   "Within the scope of the instantiating Namespace, InstanceID "
159                   "opaquely and uniquely identifies an instance of this class. "
160                   "In order to ensure uniqueness within the NameSpace, the "
161                   "value of InstanceID SHOULD be constructed using the "
162                   "following 'preferred' algorithm: \n"
163                   "   <OrgID>:<LocalID> \n"
164                   "Where <OrgID> and <LocalID> are separated by a colon ':', "
165                   "and where <OrgID> MUST include a copyrighted, trademarked "
166                   "or otherwise unique name that is owned by the business entity "
167                   "creating/defining the InstanceID, or is a registered ID that is "
168                   "assigned to the business entity by a recognized global "
169 kumpf 1.2         "authority (This is similar to the <Schema Name>_<Class Name> "
170                   "structure of Schema class names.) In addition, to ensure "
171                   "uniqueness <OrgID> MUST NOT contain a colon (':'). When using "
172                   "this algorithm, the first colon to appear in "
173                   "InstanceID MUST appear between <OrgID> and <LocalID>.  \n"
174                   "   <LocalID> is chosen by the business entity and SHOULD not be "
175                   "re-used to identify different underlying (real-world) elements. "
176                   "If the above 'preferred' algorithm is not used, the defining "
177                   "entity MUST assure that the resultant InstanceID is not "
178                   "re-used across any InstanceIDs produced by this or other "
179                   "providers for this instance's NameSpace. \n"
180                   "For DMTF defined instances, the 'preferred' algorithm MUST be "
181                   "used with the <OrgID> set to 'CIM'.") ]        
182               string InstanceID;
183           };
184           
185           
186           // ==================================================================
187           // HostedCollection    
188           // ==================================================================
189           [Association, Version ("2.7.0"), Description (
190 kumpf 1.2     "HostedCollection defines a SystemSpecificCollection "
191               "in the context of a scoping System. It represents a "
192               "Collection that only has meaning in the context of a "
193               "System, and/or whose elements are restricted by the "
194               "definition of the System.") ]
195           class CIM_HostedCollection : CIM_Dependency {
196           
197               [Override ("Antecedent"), Min (1), Max (1), Description (
198                   "The scoping system.") ] 
199               CIM_System REF Antecedent;
200                 
201               [Override ("Dependent"), Description (
202                   "The collection defined in the context of a system.") ] 
203               CIM_SystemSpecificCollection REF Dependent;
204           };
205           
206           
207           // ===================================================================
208           // CollectionOfMSEs
209           // ===================================================================
210           [Abstract, Version ("2.6.0"), Description (
211 kumpf 1.2     "  The CollectionOfMSEs object allows the grouping of Managed"
212               "SystemElements for various identification purposes and to "
213               "reduce the complexity of associating Settings and "
214               "Configurations. It is abstract to require further definition "
215               "and semantic refinement in subclasses. The CollectionOfMSEs "
216               "object does not carry any state or status information, but "
217               "only represents a grouping or 'bag' of Elements. For this "
218               "reason, it is incorrect to subclass groups that have state/"
219               "status from CollectionOfMSEs - an example is CIM_Redundancy"
220               "Group (which is subclassed from LogicalElement). \n"
221               "  Collections typically aggregate 'like'objects, but are " 
222               "not required to do so.  They simply identify 'bags' and "
223               "may represent an optimization. This is especially true "
224               "with respect to their association to Settings and "
225               "Configurations. Without Collections, one is forced to "
226               "define individual ElementSetting andElementConfiguration "
227               "associations, to tie Settings and Configuration objects to "
228               "individual ManagedSystemElements. There may be much "
229               "duplication in assigning the same Setting to multiple objects. "
230               "In addition, using the Collection object allows the "
231               "determination that the Setting and Configuration associations "
232 kumpf 1.2     "are indeed the same for the Collection's members. This "
233               "information would otherwise be obtained by defining the "
234               "Collection in a proprietary manner, and then querying "
235               "the ElementSetting and ElementConfiguration associations to "
236               "determine ifthe Collection set is completely covered.") ]
237           class CIM_CollectionOfMSEs : CIM_Collection {
238                 
239               [MaxLen (256), Description (
240                   "The identification of the Collection object. When subclassed, "
241                   "the CollectionID property can be overridden to be a Key "
242                   "property.") ]
243               string CollectionID;
244           };
245           
246           
247           // ==================================================================
248           // CollectedCollections
249           // ==================================================================
250           [Association, Aggregation, Version ("2.6.0"), Description (
251               "CIM_CollectedCollections is an aggregation association "
252               "representing that a CollectionOfMSEs may itself be contained "
253 kumpf 1.2     "in a CollectionOfMSEs.") ]
254           class CIM_CollectedCollections {
255               [Aggregate, Key, Description (
256                   "The 'higher level' or parent element in the aggregation.") ]
257               CIM_CollectionOfMSEs REF Collection;
258               
259               [Key, Description (
260                   "The 'collected' Collection.") ]
261               CIM_CollectionOfMSEs REF CollectionInCollection;
262           };
263           
264                
265           // ==================================================================
266           // CollectedMSEs
267           // ==================================================================
268           [Association, Aggregation, Version ("2.6.0"), Description (
269               "CIM_CollectedMSEs is a generic association used to "
270               "establish the members of the grouping object, CollectionOf"
271               "MSEs.") ]
272           class CIM_CollectedMSEs : CIM_MemberOfCollection {
273               [Aggregate, Override("Collection"), Description (
274 kumpf 1.2         "The grouping or 'bag' object that represents the "
275                   "Collection.") ]
276               CIM_CollectionOfMSEs REF Collection;
277               
278               [Override("Member"), Description (
279                   "The members of the Collection.") ]
280               CIM_ManagedSystemElement REF Member;
281           };
282           
283           
284           // ===================================================================
285           // end of file
286           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2