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

  1 karl  1.1 // ===================================================================
  2           // Title:       Core Collections 2.7
  3           // Filename:    Core27_Collection.mof
  4           // Version:     2.7.0
  5           // Release:     Preliminary 
  6           // Date:        07/01/02
  7           // ===================================================================
  8           // Copyright 2002 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 karl  1.1 // 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 karl  1.1 // ===================================================================
 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           // CR684 - Add SystemSpecificCollection and HostedCollection
 54           // CR760 - Add OrderedMemberOfCollection
 55           // ================================================================== 
 56           
 57           #pragma locale ("en_US")
 58           
 59           
 60           // ==================================================================
 61           // Collection 
 62           // ================================================================== 
 63           [Abstract, Version ("2.6.0"), Description (   
 64 karl  1.1     "Collection is an abstract class that provides a common "   
 65               "superclass for data elements that represent collections of "
 66               "ManagedElements and its subclasses.") ]
 67           class CIM_Collection : CIM_ManagedElement {   
 68           };
 69           
 70           
 71           // ==================================================================
 72           // MemberOfCollection    
 73           // ==================================================================
 74           [Association, Aggregation, Version ("2.6.0"), Description (   
 75               "CIM_MemberOfCollection is an aggregation used to establish "   
 76               "membership of ManagedElements in a Collection." ) ]  
 77           class CIM_MemberOfCollection {   
 78               
 79               [Key, Aggregate, Description (
 80                   "The Collection that aggregates members.") ]    
 81               CIM_Collection REF Collection;
 82               
 83               [Key, Description (
 84                   "The aggregated member of the Collection.") ]    
 85 karl  1.1     CIM_ManagedElement REF Member;   
 86           };   
 87           
 88           
 89           // ==============================================================
 90           // OrderedMemberOfCollection
 91           // ==============================================================
 92           [Association, Aggregation, Experimental, Version ("2.7.0"), 
 93               Description (   
 94               "CIM_OrderedMemberOfCollection is an aggregation used to "
 95               "establish an ordered membership of ManagedElements in a "
 96               "Collection." ) ]  
 97           class CIM_OrderedMemberOfCollection : CIM_MemberOfCollection {   
 98              
 99               [Description (
100                   "AssignedSequence is an unsigned integer 'n' that indicates "
101                   "the relative position of members within a Collection.  When "
102                   "'n' is a positive integer, it indicates a place in the "
103                   "sequence of members, with smaller integers indicating earlier "
104                   "positions in the sequence.  The special value '0' indicates "
105                   "'don't care'.  If two or more members have the same non-zero "
106 karl  1.1         "sequence number, then the ordering between those members is "
107                   "irrelavent, but they must all be ordered at the appropriate "
108                   "place in the overall sequence.\n"
109                   "\n"
110                   "A series of examples will make ordering of members "
111                   "clearer: \n"
112                   "    o If all members have the same sequence number,\n"
113                   "      regardless of whether it is '0' or non-zero, any\n"
114                   "      order is acceptable.\n"
115                   "    o The values: \n"
116                   "          1:MEMBER A \n"
117                   "          2:MEMBER B \n"
118                   "          1:MEMBER C \n"
119                   "          3:MEMBER D \n"
120                   "      indicate two acceptable orders: A,C,B,D or C,A,B,D,\n"
121                   "      since A and C can be ordered in either sequence, but\n"
122                   "      only at the '1' position. \n"
123                   "\n"
124                   "Note that the non-zero sequence numbers need not start with "
125                   "'1', and they need not be consecutive.  All that matters is "
126                   "their relative magnitude.") ]
127 karl  1.1     uint64 AssignedSequence;
128           };
129           
130           
131           // ==================================================================
132           // SystemSpecificCollection
133           // ================================================================== 
134           [Experimental, Version ("2.7.0"), Description (   
135               "   SystemSpecificCollection represents the general "
136               "concept of a collection which is scoped (or contained) by a "
137               "System. It represents a Collection that only has meaning "
138               "in the context of a System, and/or whose elements are "
139               "restricted by the definition of the System. This is explicitly "
140               "described by the (required) association, HostedCollection. \n"
141               "   An example of a SystemSpecificCollection is a "
142               "Fibre Channel zone that collects network ports, port "
143               "groupings and aliases (as required by a customer) in the "
144               "context of an AdminDomain.  The Collection is not a part "
145               "of the domain, but merely an arbitrary grouping of the devices "
146               "and other Collections in the domain.  In other words, the "
147               "context of the Collection is restricted to the domain, and its "
148 karl  1.1     "members are also limited by the domain.") ]
149           class CIM_SystemSpecificCollection : CIM_Collection {
150           
151               [Key, Description (
152                   "InstanceID opaquely identifies a unique instance of "
153                   "collection that is scoped (contained) by a System. "
154                   "The InstanceID must be unique within a namespace. "
155                   "In order to ensure uniqueness, the value of InstanceID "
156                   "should be constructed in the following manner:  \n"
157                   "<Vendor ID><ID> \n"
158                   "   <Vendor ID> MUST include a copyrighted, trademarked "
159                   "or otherwise unique name that is owned by the business "
160                   "entity or a registered ID that is assigned to the business "
161                   "entity that is defining the InstanceID. (This is similar to "
162                   "the <Schema Name>_<Class Name> structure of Schema class "
163                   "names.) The purpose of <Vendor ID> is to ensure that <ID> "
164                   "is truly unique across multiple vendor implementations. "
165                   "If such a name is not used, the defining entity MUST assure "
166                   "that the <ID> portion of the Instance ID is unique when "
167                   "compared with other instance providers. For DMTF defined "
168                   "instances, the <Vendor ID> is 'CIM'. \n"
169 karl  1.1         "   <ID> MUST include a vendor specified unique "
170                   "identifier.") ]    
171               string InstanceID;
172           };
173           
174           
175           // ==================================================================
176           // HostedCollection    
177           // ==================================================================
178           [Association, Experimental, Version ("2.7.0"), Description (
179               "HostedCollection defines a SystemSpecificCollection "
180               "in the context of a scoping System. It represents a "
181               "Collection that only has meaning in the context of a "
182               "System, and/or whose elements are restricted by the "
183               "definition of the System.") ]
184           class CIM_HostedCollection : CIM_Dependency {
185           
186               [Override ("Antecedent"), Min (1), Max (1), Description (
187                   "The scoping system.") ] 
188               CIM_System REF Antecedent;
189                 
190 karl  1.1     [Override ("Dependent"), Description (
191                   "The collection defined in the context of a system.") ] 
192               CIM_SystemSpecificCollection REF Dependent;
193           };
194           
195           
196           // ===================================================================
197           // CollectionOfMSEs
198           // ===================================================================
199           [Abstract, Version ("2.6.0"), Description (
200               "  The CollectionOfMSEs object allows the grouping of Managed"
201               "SystemElements for various identification purposes and to "
202               "reduce the complexity of associating Settings and "
203               "Configurations. It is abstract to require further definition "
204               "and semantic refinement in subclasses. The CollectionOfMSEs "
205               "object does not carry any state or status information, but "
206               "only represents a grouping or 'bag' of Elements. For this "
207               "reason, it is incorrect to subclass groups that have state/"
208               "status from CollectionOfMSEs - an example is CIM_Redundancy"
209               "Group (which is subclassed from LogicalElement). \n"
210               "  Collections typically aggregate 'like'objects, but are " 
211 karl  1.1     "not required to do so.  They simply identify 'bags' and "
212               "may represent an optimization. This is especially true "
213               "with respect to their association to Settings and "
214               "Configurations. Without Collections, one is forced to "
215               "define individual ElementSetting andElementConfiguration "
216               "associations, to tie Settings and Configuration objects to "
217               "individual ManagedSystemElements. There may be much "
218               "duplication in assigning the same Setting to multiple objects. "
219               "In addition, using the Collection object allows the "
220               "determination that the Setting and Configuration associations "
221               "are indeed the same for the Collection's members. This "
222               "information would otherwise be obtained by defining the "
223               "Collection in a proprietary manner, and then querying "
224               "the ElementSetting and ElementConfiguration associations to "
225               "determine ifthe Collection set is completely covered.") ]
226           class CIM_CollectionOfMSEs : CIM_Collection {
227                 
228               [MaxLen (256), Description (
229                   "The identification of the Collection object. When subclassed, "
230                   "the CollectionID property can be overridden to be a Key "
231                   "property.") ]
232 karl  1.1     string CollectionID;
233           };
234           
235           
236           // ==================================================================
237           // CollectedCollections
238           // ==================================================================
239           [Association, Aggregation, Version ("2.6.0"), Description (
240               "CIM_CollectedCollections is an aggregation association "
241               "representing that a CollectionOfMSEs may itself be contained "
242               "in a CollectionOfMSEs.") ]
243           class CIM_CollectedCollections {
244               [Aggregate, Key, Description (
245                   "The 'higher level' or parent element in the aggregation.") ]
246               CIM_CollectionOfMSEs REF Collection;
247               
248               [Key, Description (
249                   "The 'collected' Collection.") ]
250               CIM_CollectionOfMSEs REF CollectionInCollection;
251           };
252           
253 karl  1.1      
254           // ==================================================================
255           // CollectedMSEs
256           // ==================================================================
257           [Association, Aggregation, Version ("2.6.0"), Description (
258               "CIM_CollectedMSEs is a generic association used to "
259               "establish the members of the grouping object, CollectionOf"
260               "MSEs.") ]
261           class CIM_CollectedMSEs : CIM_MemberOfCollection {
262               [Aggregate, Override("Collection"), Description (
263                   "The grouping or 'bag' object that represents the "
264                   "Collection.") ]
265               CIM_CollectionOfMSEs REF Collection;
266               
267               [Override("Member"), Description (
268                   "The members of the Collection.") ]
269               CIM_ManagedSystemElement REF Member;
270           };
271           
272           
273           // ===================================================================
274 karl  1.1 // end of file
275           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2