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

  1 tony  1.1 // ===================================================================
  2           // Title:       Core Products & FRUs 2.8
  3           // Filename:    Core28_ProductFRU.mof
  4           // Version:     2.8
  5           // Status:      Final
  6           // Date:        Jan 26, 2004
  7           // ===================================================================
  8           // Copyright 1999-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 tony  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 tony  1.1 // ===================================================================
 44           // Description: The Core Model defines basic management concepts.
 45           //              This file defines the concepts for Products and
 46           //              FRUs (field replaceable units).
 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.8 - None
 53           // 
 54           // Change Log for v2.7
 55           // CR968 - Remove the Experimental qualifier
 56           // 
 57           // Change Log for v2.7
 58           // CR753 - Update description for Product and add ModelCorrespondence
 59           //         to the CIM Support Schema
 60           //       - Add ProductComponent, ProductPhysicalComponent,
 61           //         ProductSoftwareComponent and ProductServiceComponent
 62           //       - Deprecate ProductPhysicalElementsComponent
 63           // CR761 - Add the Composition qualifier to ProductParentChild,
 64 tony  1.1 //         ProductPhysicalElements, FRUPhysicalElements, and
 65           //         FRUIncludesProduct
 66           // ==================================================================
 67           
 68           #pragma locale ("en_US")
 69           
 70           
 71           // ==================================================================
 72           // Product
 73           // ==================================================================
 74              [Version ( "2.7.0" ), Description (
 75                  "CIM_Product is a concrete class that aggregates "
 76                  "PhysicalElements, software (SoftwareIdentity and "
 77                  "SoftwareFeatures), Services and/or other Products, and is "
 78                  "acquired as a unit. Acquisition implies an agreement between "
 79                  "supplier and consumer which may have implications to Product "
 80                  "licensing, support and warranty. Non-commercial (e.g., "
 81                  "in-house developed Products) should also be identified as an "
 82                  "instance of CIM_Product. \n"
 83                  "Note that software is handled a bit differently in the list of "
 84                  "aggregated entities, above. This is because software can be "
 85 tony  1.1        "viewed as a tangible asset (similar to PhysicalElements) AND/ "
 86                  "OR as a set of features that make up a Product and are "
 87                  "deployed. These are two different concepts, usually managed by "
 88                  "different units in a business' organization. When software "
 89                  "'features' are described, the CIM_SoftwareFeature class from "
 90                  "the Application Model is instantiated (where Features are Weak "
 91                  "to/scoped by a Product). When a specific piece of software is "
 92                  "acquired and perhaps warrantied as part of a Product, this is "
 93                  "addressed by the class, SoftwareIdentity.")]
 94           class CIM_Product : CIM_ManagedElement {
 95           
 96                 [Key, Description (
 97                     "Commonly used Product name."), 
 98                  MaxLen ( 256 ), 
 99                  MappingStrings { "MIF.DMTF|ComponentID|001.2" }, 
100                  ModelCorrespondence { "PRS_Product.ProductName" }]
101              string Name;
102           
103                 [Key, Description (
104                     "Product identification such as a serial number on software, "
105                     "a die number on a hardware chip, or (for non-commercial "
106 tony  1.1           "Products) a project number."), 
107                  MaxLen ( 64 ), 
108                  MappingStrings { "MIF.DMTF|ComponentID|001.4" }]
109              string IdentifyingNumber;
110           
111                 [Key, Description (
112                     "The name of the Product's supplier, or entity selling the "
113                     "Product (the manufacturer, reseller, OEM, etc.). "
114                     "Corresponds to the Vendor property in the Product object in "
115                     "the DMTF Solution Exchange Standard."), 
116                  MaxLen ( 256 ), 
117                  MappingStrings { "MIF.DMTF|ComponentID|001.1" }, 
118                  ModelCorrespondence { "PRS_Product.Vendor" }]
119              string Vendor;
120           
121                 [Key, Description (
122                     "Product version information."), 
123                  MaxLen ( 64 ), 
124                  MappingStrings { "MIF.DMTF|ComponentID|001.3" }, 
125                  ModelCorrespondence { "PRS_Product.Version" }]
126              string Version;
127 tony  1.1 
128                 [Description (
129                     "Product SKU (stock keeping unit) information."), 
130                  MaxLen ( 64 )]
131              string SKUNumber;
132           
133                 [Description (
134                     "If this Product is under warranty, the start date of the "
135                     "warranty."), 
136                  MappingStrings { "MIF.DMTF|FRU|002.9" }, 
137                  ModelCorrespondence { "CIM_Product.WarrantyDuration" }]
138              datetime WarrantyStartDate;
139           
140                 [Description (
141                     "If this Product is under warranty, the duration of the "
142                     "warranty in days."), 
143                  Units ( "Days" ), 
144                  MappingStrings { "MIF.DMTF|FRU|002.10" }, 
145                  ModelCorrespondence { "CIM_Product.WarrantyStartDate" }]
146              uint32 WarrantyDuration;
147           };
148 tony  1.1 
149           
150           // ==================================================================
151           // ProductComponent
152           // ==================================================================
153              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
154               Description (
155                  "The CIM_ProductComponent association defines a containment and "
156                  "component relationship among Products. For example, a Product "
157                  "may come bundled with other Products. \n"
158                  "Note that this association duplicates ProductParentChild. The "
159                  "latter association is maintained for legacy reasons. This "
160                  "association, ProductComponent, is added for ease of query and "
161                  "modeling consistency. Using ProductComponent, an application "
162                  "can query for all Component relationships for a Product, "
163                  "versus querying the various Component relationships AND "
164                  "ProductParentChild.")]
165           class CIM_ProductComponent : CIM_Component {
166           
167                 [Aggregate, Override ( "GroupComponent" ), Description (
168                     "The Product which contains another Product as a component. "
169 tony  1.1           "The cardinality of this reference takes the default values "
170                     "(no minimum or maximum) since an instance of Product can "
171                     "describe either a general product type, or a specific item "
172                     "that is acquired. In the case of a specific item, a "
173                     "cardinality of Max(1) is indicated. However, when dealing "
174                     "with the general description/templating of a Product, then "
175                     "it may be a component of several others and a cardinality "
176                     "of Max(1) would be invalid."), 
177                  ModelCorrespondence { "PRS_ProductComponent.Antecedent" }]
178              CIM_Product REF GroupComponent;
179           
180                 [Override ( "PartComponent" ), Description (
181                     "The contained Product."), 
182                  ModelCorrespondence { "PRS_ProductComponent.Dependent" }]
183              CIM_Product REF PartComponent;
184           };
185           
186           
187           // ==================================================================
188           // ProductParentChild
189           // ==================================================================
190 tony  1.1    [Association, Aggregation, Composition, Version ( "2.7.0" ), 
191               Description (
192                  "The CIM_ProductParentChild association defines a parent child "
193                  "hierarchy among Products. For example, a Product may come "
194                  "bundled with other Products.")]
195           class CIM_ProductParentChild {
196           
197                 [Key, Aggregate, Description (
198                     "The parent Product in the association.")]
199              CIM_Product REF Parent;
200           
201                 [Key, Description (
202                     "The child Product in the association.")]
203              CIM_Product REF Child;
204           };
205           
206           
207           // ==================================================================
208           // CompatibleProduct
209           // ==================================================================
210              [Association, Version ( "2.6.0" ), Description (
211 tony  1.1        "CIM_CompatibleProduct is an association between Products that "
212                  "can indicate a wide variety of information. For example, it "
213                  "can indicate that the two referenced Products interoperate, "
214                  "that they can be installed together, that one can be the "
215                  "physical container for the other, etc. The string property, "
216                  "CompatibilityDescription, defines how the Products "
217                  "interoperate or are compatible, any limitations regarding "
218                  "interoperability or installation, ...")]
219           class CIM_CompatibleProduct {
220           
221                 [Key, Description (
222                     "The Product for which compatible offerings are defined.")]
223              CIM_Product REF Product;
224           
225                 [Key, Description (
226                     "The compatible Product.")]
227              CIM_Product REF CompatibleProduct;
228           
229                 [Description (
230                     "CompatibilityDescription is a free-form string defining how "
231                     "the two referenced Products interoperate or are compatible, "
232 tony  1.1           "any limitations to compatibility, etc.")]
233              string CompatibilityDescription;
234           };
235           
236           
237           // ==================================================================
238           // ProductProductDependency
239           // ==================================================================
240              [Association, Version ( "2.6.0" ), Description (
241                  "CIM_ProductProductDependency is an association between two "
242                  "Products, indicating that one must be installed, or must be "
243                  "absent, for the other to function. This is conceptually "
244                  "equivalent to the ServiceServiceDependency association.")]
245           class CIM_ProductProductDependency {
246           
247                 [Key, Description (
248                     "The required Product.")]
249              CIM_Product REF RequiredProduct;
250           
251                 [Key, Description (
252                     "The Product that is dependent on another Product.")]
253 tony  1.1    CIM_Product REF DependentProduct;
254           
255                 [Description (
256                     "The nature of the Product dependency. This property "
257                     "describes that the associated Product must be installed "
258                     "(value=2) or must be absent (value=3) in order for the "
259                     "Product to function."), 
260                  ValueMap { "0", "1", "2", "3" }, 
261                  Values { "Unknown", "Other", "Product Must Be Installed",
262                     "Product Must Not Be Installed" }]
263              uint16 TypeOfDependency;
264           };
265           
266           
267           // ==================================================================
268           // SupportAccess
269           // ==================================================================
270              [Version ( "2.6.0" ), Description (
271                  "The CIM_SupportAccess association defines how to obtain "
272                  "assistance for a Product.")]
273           class CIM_SupportAccess : CIM_ManagedElement {
274 tony  1.1 
275                 [Key, Description (
276                     "SupportAccessID is an arbitrary, free form string defined "
277                     "by the Product Vendor or by the organization that deploys "
278                     "the Product. This property, since it is a key, should be "
279                     "unique throughout the enterprise."), 
280                  MaxLen ( 256 )]
281              string SupportAccessId;
282           
283                 [Override ( "Description" ), Description (
284                     "A textual description of the type of Support provided."), 
285                  MappingStrings { "MIF.DMTF|Support|001.3" }]
286              string Description;
287           
288                 [Description (
289                     "CommunicationInfo provides the details of the Communication "
290                     "Mode. For example, if the CommunicationMode is 'Phone', "
291                     "CommunicationInfo specifies the phone number to be called."), 
292                  MappingStrings { "MIF.DMTF|FRU|002.11", "MIF.DMTF|FRU|002.12" }]
293              string CommunicationInfo;
294           
295 tony  1.1       [Description (
296                     "CommunicationMode defines the form of communication in "
297                     "order to obtain support. For example, phone communication "
298                     "(value =2), fax (3) or email (8) can be specified."), 
299                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" }, 
300                  Values { "Other", "Phone", "Fax", "BBS", "Online Service",
301                     "Web Page", "FTP", "E-mail" }, 
302                  MappingStrings { "MIF.DMTF|Support|001.5" }]
303              uint16 CommunicationMode;
304           
305                 [Description (
306                     "Locale defines the geographic region and/or language "
307                     "dialect to which this Support resource pertains."), 
308                  MaxLen ( 64 ), 
309                  MappingStrings { "MIF.DMTF|Support|001.2" }]
310              string Locale;
311           };
312           
313           
314           // ==================================================================
315           // ProductSupport
316 tony  1.1 // ==================================================================
317              [Association, Version ( "2.6.0" ), Description (
318                  "CIM_ProductSupport is an association between Product and "
319                  "SupportAccess that conveys how support is obtained for the "
320                  "Product. This is a many-to-many relationship, implying that "
321                  "various types of Support are available for a Product, and that "
322                  "the same Support object can provide assistance for multiple "
323                  "Products.")]
324           class CIM_ProductSupport {
325           
326                 [Key, Description (
327                     "The Product.")]
328              CIM_Product REF Product;
329           
330                 [Key, Description (
331                     "Support for the Product.")]
332              CIM_SupportAccess REF Support;
333           };
334           
335           
336           // ==================================================================
337 tony  1.1 //  FRU
338           // ==================================================================
339              [Version ( "2.6.0" ), Description (
340                  "The CIM_FRU class is a vendor-defined collection of Products "
341                  "and/or PhysicalElements that is associated with a Product for "
342                  "the purpose of supporting, maintaining or upgrading that "
343                  "Product at the customer's location. FRU is an acronym for "
344                  "'field replaceable unit'.")]
345           class CIM_FRU : CIM_ManagedElement {
346           
347                 [Key, Description (
348                     "FRU ordering information."), 
349                  MaxLen ( 64 ), 
350                  MappingStrings { "MIF.DMTF|FRU|002.6" }]
351              string FRUNumber;
352           
353                 [Key, Description (
354                     "FRU identification such as a serial number on software or a "
355                     "die number on a hardware chip."), 
356                  MaxLen ( 64 ), 
357                  MappingStrings { "MIF.DMTF|FRU|002.7" }]
358 tony  1.1    string IdentifyingNumber;
359           
360                 [Key, Description (
361                     "The name of the FRU's supplier."), 
362                  MaxLen ( 256 ), 
363                  MappingStrings { "MIF.DMTF|FRU|002.4" }]
364              string Vendor;
365           
366                 [Override ( "Description" ), Description (
367                     "A textual description of the FRU."), 
368                  MappingStrings { "MIF.DMTF|FRU|002.3" }]
369              string Description;
370           
371                 [Description (
372                     "FRU name."), 
373                  MaxLen ( 256 )]
374              string Name;
375           
376                 [Description (
377                     "The FRU's revision level."), 
378                  MaxLen ( 64 ), 
379 tony  1.1        MappingStrings { "MIF.DMTF|FRU|002.8" }]
380              string RevisionLevel;
381           
382                 [Description (
383                     "Indicates whether the FRU is customer replaceable.")]
384              boolean CustomerReplaceable;
385           };
386           
387           
388           // ==================================================================
389           // ProductFRU
390           // ==================================================================
391              [Association, Version ( "2.6.0" ), Description (
392                  "CIM_ProductFRU is an association between Product and FRU that "
393                  "provides information regarding what Product components have "
394                  "been or are being replaced. The association is one to many, "
395                  "conveying that a Product can have many FRUs, and that a "
396                  "particular instance of a FRU is only applied to one (instance "
397                  "of a) Product.")]
398           class CIM_ProductFRU {
399           
400 tony  1.1       [Key, Max ( 1 ), Description (
401                     "The Product to which the FRU is applied.")]
402              CIM_Product REF Product;
403           
404                 [Key, Description (
405                     "The FRU.")]
406              CIM_FRU REF FRU;
407           };
408           
409           
410           // ==================================================================
411           // ReplaceableProductFRU
412           // ==================================================================
413              [Association, Version ( "2.6.0" ), Description (
414                  "ReplaceableProductFRU is an association between Product and "
415                  "FRU that shows what Product components may be replaced. The "
416                  "association is one to many, conveying that a Product can have "
417                  "many FRUs, and that a particular instance of a FRU is only "
418                  "applied to one (instance of a) Product.")]
419           class CIM_ReplaceableProductFRU {
420           
421 tony  1.1       [Key, Max ( 1 ), Description (
422                     "The Product to which the FRU is applied.")]
423              CIM_Product REF Product;
424           
425                 [Key, Description (
426                     "The FRU.")]
427              CIM_FRU REF FRU;
428           };
429           
430           
431           // ==================================================================
432           // ProductPhysicalComponent
433           // ==================================================================
434              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
435               Description (
436                  "Indicates that the referenced PhysicalElement is acquired as "
437                  "part of a Product.")]
438           class CIM_ProductPhysicalComponent : CIM_Component {
439           
440                 [Override ( "GroupComponent" ), Max ( 1 ), Description (
441                     "The Product.")]
442 tony  1.1    CIM_Product REF GroupComponent;
443           
444                 [Override ( "PartComponent" ), Description (
445                     "The PhysicalElement which is a part of the Product.")]
446              CIM_PhysicalElement REF PartComponent;
447           };
448           
449           
450           // ==================================================================
451           // ProductSoftwareComponent
452           // ==================================================================
453              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
454               Description (
455                  "Indicates that the referenced SoftwareIdentity is acquired as "
456                  "part of a Product.")]
457           class CIM_ProductSoftwareComponent : CIM_Component {
458           
459                 [Override ( "GroupComponent" ), Max ( 1 ), Description (
460                     "The Product.")]
461              CIM_Product REF GroupComponent;
462           
463 tony  1.1       [Override ( "PartComponent" ), Description (
464                     "The software which is a part of the Product.")]
465              CIM_SoftwareIdentity REF PartComponent;
466           };
467           
468           
469           // ==================================================================
470           // ProductServiceComponent
471           // ==================================================================
472              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
473               Description (
474                  "Indicates that the referenced Service is acquired as part of a "
475                  "Product. Examples of Services that may be acquired are "
476                  "outsourced storage and networking services, or support and "
477                  "warranty services. Expanding on the examples, Services "
478                  "represent generic functionality - so, it is possible to model "
479                  "the existence of storage volume management or warranty "
480                  "services as individual instances of subclasses of CIM_Service. "
481                  "These 'Services' may be enabled/disabled, started/stopped, "
482                  "signal an error, etc. (They behave as standard "
483                  "ManagedSystemElements.) Specific requests against the Services "
484 tony  1.1        "- for example, a request for warranty service or increased "
485                  "storage space - are NOT new instances of Service, but may be "
486                  "requested via the methods of the Service subclass, or be "
487                  "instantiated as specific subclasses of ManagedElement.")]
488           class CIM_ProductServiceComponent : CIM_Component {
489           
490                 [Aggregate, Override ( "GroupComponent" ), Max ( 1 ), 
491                  Description (
492                     "The Product.")]
493              CIM_Product REF GroupComponent;
494           
495                 [Override ( "PartComponent" ), Description (
496                     "The Service which is a part of the Product.")]
497              CIM_Service REF PartComponent;
498           };
499           
500           
501           // ==================================================================
502           // ProductPhysicalElements
503           // ==================================================================
504              [Association, Deprecated { "CIM_ProductPhysicalComponent" },
505 tony  1.1     Aggregation, Composition, Version ( "2.7.0" ), Description (
506                  "Indicates the PhysicalElement(s) that make up a Product. This "
507                  "association is deprecated in order to correctly place it in "
508                  "the inheritance hierarchy and align the definition with other "
509                  "new classes that are being added to the model, such as "
510                  "CIM_ProductServiceComponent. ProductPhysicalElements was "
511                  "defined in the original CIM V2.0 release, when a Managed "
512                  "Element and a Component relationship between ManagedElements "
513                  "did not exist.")]
514           class CIM_ProductPhysicalElements {
515           
516                 [Deprecated { "CIM_ProductPhysicalComponent.GroupComponent" },
517                  Key, Aggregate, Max ( 1 ), Description (
518                     "The Product.")]
519              CIM_Product REF Product;
520           
521                 [Deprecated { "CIM_ProductPhysicalComponent.PartComponent" }, Key, 
522                  Description (
523                     "The PhysicalElement which is a part of the Product.")]
524              CIM_PhysicalElement REF Component;
525           };
526 tony  1.1 
527           
528           // ==================================================================
529           // FRUPhysicalElements
530           // ==================================================================
531              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
532               Description (
533                  "Indicates the PhysicalElements that make up a FRU.")]
534           class CIM_FRUPhysicalElements {
535           
536                 [Key, Aggregate, Max ( 1 ), Description (
537                     "The FRU.")]
538              CIM_FRU REF FRU;
539           
540                 [Key, Description (
541                     "The PhysicalElement which is a part of the FRU.")]
542              CIM_PhysicalElement REF Component;
543           };
544           
545           
546           // ==================================================================
547 tony  1.1 // FRUIncludesProduct
548           // ==================================================================
549              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
550               Description (
551                  "Indicates that a FRU may be composed of other Product(s).")]
552           class CIM_FRUIncludesProduct {
553           
554                 [Key, Aggregate, Max ( 1 ), Description (
555                     "The FRU.")]
556              CIM_FRU REF FRU;
557           
558                 [Key, Description (
559                     "The Product which is a part of the FRU.")]
560              CIM_Product REF Component;
561           };
562           
563           
564           // ===================================================================
565           // end of file
566           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2