26 karl 1.1 // Description: The object classes below are listed in an order that
27 // avoids forward references. Required objects, defined
28 // by other working groups, are omitted.
29 // ===================================================================
30 // Date: 12/18/2000 - Initial release, Version 2.5
31 // Author: DMTF Event Working Group
32 //====================================================================
33
34
35 // ===================================================================
36 // Pragmas
37 // ===================================================================
38 #pragma locale ("en_US")
39
40
41 //====================================================================
42 // CIM_Indication
43 //====================================================================
44 [Indication, Abstract,
45 Description (
46 "CIM_Indication is the abstract root class for all notifications "
47 karl 1.1 "about changes in schema, objects and their data, and about "
48 "events detected by providers and instrumentation. Subclasses "
49 "represent specific types of notifications. \n"
50 "\n"
51 "To receive an Indication, a consumer (or subscriber) must create "
52 "an instance of CIM_IndicationFilter describing the criteria of "
53 "the notification, an instance of CIM_IndicationHandler describing "
54 "the delivery of the notification, and an instance of "
55 "CIM_IndicationSubscription associating the Filter and Handler.") ]
56 class CIM_Indication
57 {
58 [Description (
59 "The time and date of creation of the Indication. The property "
60 "may be set to NULL if the entity creating the Indication is "
61 "not capable of determing this information. Note that "
62 "IndicationTime may be the same for two Indications that are "
63 "generated in rapid succession.") ]
64 datetime IndicationTime;
65 };
66
67 //====================================================================
68 karl 1.1 // CIM_ClassIndication
69 //====================================================================
70 [Indication, Abstract,
71 Description (
72 "CIM_ClassIndication is an abstract superclass describing changes "
73 "in the definition of the schema. Subclasses represent specific "
74 "types of change notifications, such as class creation, deletion "
75 "and modification.") ]
76 class CIM_ClassIndication : CIM_Indication
77 {
78 [EmbeddedObject, Required,
79 Description (
80 "The current definition of the class that is created, changed "
81 "or deleted in the schema. In the case of a CIM_ClassDeletion "
82 "Indication, the definition for the class just prior to "
83 "deletion should be placed in this property.") ]
84 string ClassDefinition;
85 };
86
87 //====================================================================
88 // CIM_ClassCreation
89 karl 1.1 //====================================================================
90 [Indication,
91 Description (
92 "CIM_ClassCreation notifies when a new class is defined in the "
93 "schema.") ]
94 class CIM_ClassCreation : CIM_ClassIndication
95 {
96 };
97
98 //====================================================================
99 // CIM_ClassDeletion
100 //====================================================================
101 [Indication,
102 Description (
103 "CIM_ClassDeletion notifies when a class is deleted from the "
104 "schema.") ]
105 class CIM_ClassDeletion : CIM_ClassIndication
106 {
107 };
108
109 //====================================================================
110 karl 1.1 // CIM_ClassModification
111 //====================================================================
112 [Indication,
113 Description (
114 "CIM_ClassModification notifies when a class definition in the "
115 "schema is modified.") ]
116 class CIM_ClassModification : CIM_ClassIndication
117 {
118 [EmbeddedObject, Required,
119 Description (
120 "A copy of the 'previous' class definition whose change "
121 "generated the Indication. PreviousClassDefinition contains "
122 "an 'older' copy of the class' information, as compared to "
123 "what is found in the ClassDefinition property (inherited "
124 "from ClassIndication).") ]
125 string PreviousClassDefinition;
126 };
127
128 //====================================================================
129 // CIM_InstIndication
130 //====================================================================
131 karl 1.1 [Indication, Abstract,
132 Description (
133 "CIM_InstIndication is an abstract superclass describing changes "
134 "to instances. Subclasses represent specific types of change "
135 "notifications, such as instance creation, deletion and "
136 "modification.") ]
137 class CIM_InstIndication : CIM_Indication
138 {
139 [EmbeddedObject, Required,
140 Description (
141 "A copy of the instance that changed to generate the "
142 "Indication. SourceInstance contains the current values of "
143 "the properties selected by the Indication"
144 "Filter's Query. In the case of CIM_InstDeletion, "
145 "the property values are copied before the instance is "
146 "deleted.") ]
147 string SourceInstance;
148 };
149
150 //====================================================================
151 // CIM_InstCreation
152 karl 1.1 //====================================================================
153 [Indication,
154 Description (
155 "CIM_InstCreation notifies when a new instance is created.") ]
156 class CIM_InstCreation : CIM_InstIndication
157 {
158 };
159
160 //====================================================================
161 // CIM_InstDeletion
162 //====================================================================
163 [Indication,
164 Description (
165 "CIM_InstDeletion notifies when an existing instance is deleted.") ]
166 class CIM_InstDeletion : CIM_InstIndication
167 {
168 };
169
170 //====================================================================
171 // CIM_InstModification
172 //====================================================================
173 karl 1.1 [Indication,
174 Description (
175 "CIM_InstModification notifies when an instance is modified.") ]
176 class CIM_InstModification : CIM_InstIndication
177 {
178 [EmbeddedObject, Required,
179 Description (
180 "A copy of the 'previous' instance whose change generated the "
181 "Indication. PreviousInstance contains 'older' values of "
182 "an instance's properties (as compared to SourceInstance), "
183 "selected by the IndicationFilter's Query.") ]
184 string PreviousInstance;
185 };
186
187 //====================================================================
188 // CIM_InstMethodCall
189 //====================================================================
190 [Indication,
191 Description (
192 "CIM_InstMethodCall notifies when an instance's method is "
193 "invoked.") ]
194 karl 1.1 class CIM_InstMethodCall : CIM_InstIndication
195 {
196 [Required, Description (
197 "The name of the method invoked.") ]
198 string MethodName;
199
200 [EmbeddedObject,
201 Description (
202 "The parameters of the method, formatted as an "
203 "EmbeddedObject (with a predefined class name of "
204 "\"__MethodParameters\".") ]
205 string MethodParameters;
206
207 [Description (
208 "ReturnValue's data is dependent on the PreCall property. "
209 "When PreCall is TRUE, this property is NULL describing that "
210 "there is no method return value (since the method has not yet "
211 "executed). When PreCall is FALSE, ReturnValue contains a "
212 "string representation of the method's return value."),
213 ModelCorrespondence {"CIM_InstMethodCall.PreCall"} ]
214 string ReturnValue;
215 karl 1.1
216 [Required, Description (
217 "Boolean indicating whether the Indication is sent before "
218 "the method begins executing (TRUE) or when the method "
219 "completes (FALSE). When TRUE, the inherited property "
220 "SourceInstance contains the value of the instance (the "
221 "properties defined by the Filter's Query clause), "
222 "before execution of the method. When PreCall is FALSE, "
223 "SourceInstance embeds the instance as it appears after "
224 "the completion of the method.") ]
225 boolean PreCall;
226 };
227
228 //====================================================================
229 // CIM_InstRead
230 //====================================================================
231 [Indication,
232 Description (
233 "CIM_InstRead notifies when an instance is read but not "
234 "modified.") ]
235 class CIM_InstRead : CIM_InstIndication
236 karl 1.1 {
237 };
238
239 //====================================================================
240 // CIM_ProcessIndication
241 //====================================================================
242 [Indication, Abstract,
243 Description (
244 "An abstract superclass for specialized Indication classes, "
245 "addressing specific changes and alerts published by providers "
246 "and instrumentation. Subclasses include AlertIndication (with "
247 "properties such as PerceivedSeverity and ProbableCause), and "
248 "SNMPTrapIndication (which recasts Traps as CIM indications).") ]
249 class CIM_ProcessIndication : CIM_Indication
250 {
251 };
252
253 //====================================================================
254 // CIM_SNMPTrapIndication
255 //====================================================================
256 [Indication,
257 karl 1.1 Description (
258 "A concrete class for mapping an SNMP Trap to CIM based on the "
259 "IETF RFC 1157. The usefulness of this class is to describe "
260 "common trap semantics. But, a complete understanding of any trap "
261 "data received relies on the Indicaton recipient having access to "
262 "the sender's MIB. Understanding can be improved by mapping the "
263 "SNMP domain to CIM, and using CIM LifeCycle and standard "
264 "subclasses of CIM_ProcessIndication.") ]
265 class CIM_SNMPTrapIndication : CIM_ProcessIndication
266 {
267 [Description (
268 "Type of object generating the trap."),
269 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.enterprise"} ]
270 string Enterprise;
271
272 [Description (
273 "Address of the object generating the trap."),
274 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.agent-addr"} ]
275 string AgentAddress;
276
277 [Description (
278 karl 1.1 "An enumerated value that describes the generic trap type: \n"
279 "- The coldStart(0) trap signifies that the sending protocol "
280 "entity is reinitializing itself such that the agent's "
281 "configuration or the protocol entity implementation may be "
282 "altered. \n"
283 "- The warmStart(1) trap signifies that the sending protocol "
284 "entity is reinitializing itself such that neither the agent "
285 "configuration nor the protocol entity implementation is "
286 "altered. \n"
287 "- The linkDown(2) trap signifies that the sending protocol "
288 "recognizes a failure in one of the communication links "
289 "represented in the agent's configuration. The Trap-PDU of "
290 "type linkDown contains as the first element of its "
291 "variable-bindings the name and value of the ifIndex instance "
292 "for the affected interface. \n"
293 "- The linkUp(3) trap signifies that the sending protocol "
294 "entity recognizes that one of the communication links "
295 "represented in the agent's configuration has come up. The "
296 "Trap-PDU of type linkUp contains as the first element of its "
297 "variable-bindings, the name and value of the ifIndex instance "
298 "for the affected interface. \n"
299 karl 1.1 "- An authenticationFailure(4) trap signifies that the sending "
300 "protocol entity is the adressee of a protocol message that was "
301 "not properly authenticated. While implementations of SNMP must "
302 "be capable of generating this trap, they must also be capable "
303 "of suppressing the emission of such traps via an implementation-"
304 "specific mechanism. \n"
305 "- An egpNeighborLoss(5) trap signifies that an EGP neighbor for "
306 "whom the sending protocol entity was an EGP peer has been "
307 "marked as down and the peer relationship no longer pertains. "
308 "The Trap-PDU of type egpNeighborLoss contains as the first "
309 "element of its variable-bindings, the name and value of the "
310 "egpNeighAddr instance for the affected neighbor. \n"
311 "- An enterpriseSpecific(6) trap signifies that the sending "
312 "protocol entity recognizes that some enterprise-specific "
313 "event has occurred. The specific-trap field identifies the "
314 "particular trap which occurred."),
315 Values {"Cold Start", "Warm Start", "Link Down", "Link Up",
316 "Authentication Failure", "EGP Neighbor Loss",
317 "Enterprise Specific"},
318 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.generic-trap"} ]
319 uint16 GenericTrap;
320 karl 1.1
321 [Description ("Specific trap code."),
322 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.specific-trap"} ]
323 uint32 SpecificTrap;
324
325 [Description (
326 "Time elapsed between the last (re)intialization of the "
327 "managed entity and the generation of the trap."),
328 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.time-stamp"} ]
329 datetime TimeStamp;
330
331 [Description (
332 "Object naming information (an OID) from the 'variable "
333 "binding' portion of the Trap. This array is correlated "
334 "with the VarBindSyntaxes and VarBindValues arrays. Each "
335 "entry is related to the entries in the other arrays, "
336 "that are located at the same index. In this way, the "
337 "variable binding's name/syntax/value tuple can be "
338 "constructed."), ArrayType ("Indexed"),
339 ModelCorrespondence {"CIM_SNMPTrapIndication.VarBindSyntaxes",
340 "CIM_SNMPTrapIndication.VarBindValues"},
341 karl 1.1 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
342 string VarBindNames[];
343
344 [Description (
345 "Object syntax information (defined as an enumerated value) "
346 "from the 'variable binding' portion of the Trap. This array "
347 "is correlated with the VarBindNames and VarBindValues "
348 "arrays. Each entry is related to the entries in the other "
349 "arrays, that are located at the same index. In this way, "
350 "the variable binding's name/syntax/value tuple can be "
351 "constructed."), ArrayType ("Indexed"),
352 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"},
353 Values {"Integer", "OctetString", "ObjectIdentifier",
354 "NetworkAddress", "Counter", "Gauge",
355 "TimeTicks", "Opaque"},
356 ModelCorrespondence {"CIM_SNMPTrapIndication.VarBindNames",
357 "CIM_SNMPTrapIndication.VarBindValues"},
358 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
359 uint16 VarBindSyntaxes[];
360
361 [Description (
362 karl 1.1 "An OctetString representing object value information "
363 "from the 'variable binding' portion of the Trap. This "
364 "array is correlated with the VarBindNames and "
365 "VarBindSyntaxes arrays. Each entry is related to the "
366 "entries in the other arrays, that are located at the "
367 "same index. In this way, the variable binding's "
368 "name/syntax/value tuple can be constructed."),
369 ArrayType ("Indexed"), OctetString,
370 ModelCorrespondence {"CIM_SNMPTrapIndication.VarBindNames",
371 "CIM_SNMPTrapIndication.VarBindSyntaxes"},
372 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
373 string VarBindValues[];
374 };
375
376 //====================================================================
377 // CIM_AlertIndication
378 //====================================================================
379 [Indication,
380 Description (
381 "A concrete superclass for CIM Alert notifications. An "
382 "AlertIndication is a specialized type of CIM_Indication that "
383 karl 1.1 "contains information about the severity, cause, recommended "
384 "actions and other data of a real world event. This event and its "
385 "data may or may not be modeled in the CIM class hierarchy.") ]
386 class CIM_AlertIndication : CIM_ProcessIndication
387 {
388 [Description (
389 "A short description of the Indication."),
390 MappingStrings {"Recommendation.ITU|X733.Additional text"} ]
391 string Description;
392
393 [Description (
394 "The identifying information of the entity (ie, the instance) for "
395 "which this Indication is generated. The property contains the "
396 "path of an instance, encoded as a string parameter - if the "
397 "instance is modeled in the CIM Schema. If not a CIM instance, "
398 "the property contains some identifying string that names the "
399 "entity for which the Alert is generated.") ]
400 string AlertingManagedElement;
401
402 [Required, Description (
403 "Primary classification of the Indication. The following values "
404 karl 1.1 "are defined: \n"
405 "1 - Other. The Indication's OtherAlertType property conveys "
406 "its classification. Use of \"Other\" in an enumeration is a "
407 "standard CIM convention. It means that the current Indication "
408 "does not fit into the categories described by this enumeration. \n"
409 "2 - Communications Alert. An Indication of this type is "
410 "principally associated with the procedures and/or processes "
411 "required to convey information from one point to another. \n"
412 "3 - Quality of Service Alert. An Indication of this type is "
413 "principally associated with a degradation or errors in the "
414 "performance or function of an entity. \n"
415 "4 - Processing Error. An Indication of this type is "
416 "principally associated with a software or processing fault. \n"
417 "5 - Device Alert. An Indication of this type is principally "
418 "associated with an equipment or hardware fault. \n"
419 "6 - Environmental Alert. An Indication of this type is "
420 "principally associated with a condition relating to an "
421 "enclosure in which the hardware resides, or other "
422 "environmental considerations. \n"
423 "7 - Model Change. The Indication addresses changes in the "
424 "Information Model. For example, it may embed a Lifecycle "
425 karl 1.1 "Indication to convey the specific model change being "
426 "alerted. \n"
427 "8 - Security Alert. An Indication of this type is associated "
428 "with security violations, detection of viruses, and similar "
429 "issues."),
430 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"},
431 Values {"Other", "Communications Alert",
432 "Quality of Service Alert", "Processing Error",
433 "Device Alert", "Environmental Alert", "Model Change",
434 "Security Alert"},
435 MappingStrings {"Recommendation.ITU|X733.Event type"} ]
436 uint16 AlertType;
437
438 [Description (
439 "A string describing the Alert type - used when the AlertType "
440 "property is set to 1, \"Other State Change\"."),
441 ModelCorrespondence {"CIM_AlertIndication.AlertType"} ]
442 string OtherAlertType;
443
444 [Required, Description (
445 "An enumerated value that describes the severity of the Alert"
446 karl 1.1 "Indication from the notifier's point of view: \n"
447 "1 - Other, by CIM convention, is used to indicate that the "
448 "Severity's value can be found in the OtherSeverity property. \n"
449 "3 - Degraded/Warning should be used when its appropriate to let "
450 "the user decide if action is needed. \n"
451 "4 - Minor should be used to indicate action is needed, but the "
452 "situation is not serious at this time. \n"
453 "5 - Major should be used to indicate action is needed NOW. \n"
454 "6 - Critical should be used to indicate action is needed NOW "
455 "and the scope is broad (perhaps an imminent outage to a critical "
456 "resource will result). \n"
457 "7 - Fatal/NonRecoverable should be used to indicate an error "
458 "occurred, but it's too late to take remedial action. \n"
459 "2 and 0 - Information and Unknown (respectively) follow common "
460 "usage. Literally, the AlertIndication is purely informational "
461 "or its severity is simply unknown."),
462 Values {"Unknown", "Other", "Information", "Degraded/Warning",
463 "Minor", "Major", "Critical", "Fatal/NonRecoverable"},
464 MappingStrings {"Recommendation.ITU|X733.Perceived severity"} ]
465 uint16 PerceivedSeverity;
466
467 karl 1.1 [Description (
468 "Holds the value of the user defined severity value when "
469 "'Severity' is 1 (\"Other\")."),
470 ModelCorrespondence {"CIM_AlertIndication.PerceivedSeverity"} ]
471 string OtherSeverity;
472
473 [Required, Description (
474 "An enumerated value that describes the probable cause of the "
475 "situation which resulted in the AlertIndication."),
476 Values {"Unknown", "Other", "Adapter Error",
477 "Application Subsystem Failure", "Bandwidth Reduced",
478 "Connection Establishment Error",
479 "Communications Protocol Error",
480 "Communications Subsystem Failure",
481 "Configuration/Customization Error", "Congestion",
482 "Corrupt Data", "CPU Cycles Limit Exceeded",
483 "Dataset/Modem Error", "Degraded Signal",
484 "DTE-DCE Interface Error", "Enclosure Door Open",
485 "Equipment Malfunction", "Excessive Vibration",
486 "File Format Error", "Fire Detected", "Flood Detected",
487 "Framing Error", "HVAC Problem", "Humidity Unacceptable",
488 karl 1.1 "I/O Device Error", "Input Device Error", "LAN Error",
489 "Non-Toxic Leak Detected", "Local Node Transmission Error",
490 "Loss of Frame", "Loss of Signal",
491 "Material Supply Exhausted", "Multiplexer Problem",
492 "Out of Memory", "Output Device Error",
493 "Performance Degraded", "Power Problem",
494 "Pressure Unacceptable",
495 "Processor Problem (Internal Machine Error)",
496 "Pump Failure", "Queue Size Exceeded", "Receive Failure",
497 "Receiver Failure", "Remote Node Transmission Error",
498 "Resource at or Nearing Capacity", "Response Time Excessive",
499 "Retransmission Rate Excessive", "Software Error",
500 "Software Program Abnormally Terminated",
501 "Software Program Error (Incorrect Results)",
502 "Storage Capacity Problem", "Temperature Unacceptable",
503 "Threshold Crossed", "Timing Problem",
504 "Toxic Leak Detected", "Transmit Failure",
505 "Transmitter Failure", "Underlying Resource Unavailable",
506 "Version MisMatch", "Previous Alert Cleared",
507 "Login Attempts Failed", "Software Virus Detected",
508 "Hardware Security Breached", "Denial of Service Detected",
509 karl 1.1 "Security Credential MisMatch",
510 "Invalid Access of Data Detected"},
511 MappingStrings {"Recommendation.ITU|X733.Probable cause"} ]
512 uint16 ProbableCause;
513
514 [Description (
515 "Provides additional information related to the "
516 "ProbableCause.") ]
517 string ProbableCauseDescription;
518
519 [Description (
520 "Provides information on trending - trending up, down or "
521 "no change."),
522 Values {"Unknown", "Not Applicable", "Trending Up",
523 "Trending Down", "No Change"},
524 MappingStrings {"Recommendation.ITU|X733.TrendIndication"} ]
525 uint16 Trending;
526
527 [Description (
528 "An identifier for the AlertIndication. This property is "
529 "similar to a key value in that it can be used for "
530 karl 1.1 "identification, when correlating AlertIndications (see "
531 "the CorrelatedIndications array). Its value should be unique "
532 "as long as Alert correlations are reported, but may be "
533 "reused or left NULL if no future AlertIndications will "
534 "reference it in their CorrelatedIndications array."),
535 MappingStrings {
536 "Recommendation.ITU|X733.Notification identifier"} ]
537 string IndicationIdentifier;
538
539 [Description (
540 "A list of IndicationIdentifiers whose notifications are correlated "
541 "with (related to) this one."),
542 MappingStrings {
543 "Recommendation.ITU|X733.Correlated notifications"} ]
544 string CorrelatedIndications[];
545
546 [Description (
547 "Free form descriptions of the recommended actions to take to "
548 "resolve the cause of the notification."),
549 MappingStrings {
550 "Recommendation.ITU|X733.Proposed repair actions"} ]
551 karl 1.1 string RecommendedActions[];
552 };
553
554 //====================================================================
555 // CIM_ThresholdIndication
556 //====================================================================
557 [Indication,
558 Description (
559 "A subclass of CIM_AlertIndications carrying additional threshold "
560 "information related to the notification. This subclass is used "
561 "when one of the ProbableCauses is set to 53, \"Threshold "
562 "Crossed\".") ]
563 class CIM_ThresholdIndication : CIM_AlertIndication
564 {
565 [Description (
566 "A string describing the threshold or naming the property that "
567 "represents the threshold, if modeled in the CIM hierarchy. In "
568 "the latter case, the value should be written as <schema name>_"
569 "<class name>.<property name>."),
570 MappingStrings {"Recommendation.ITU|X733.Threshold information"} ]
571 string ThresholdIdentifier;
572 karl 1.1
573 [Description (
574 "A string holding the current value of the threshold. This is "
575 "modeled as a string for universal mapping, similar to the "
576 "CIM_Sensor properties in the Device Model."),
577 MappingStrings {"Recommendation.ITU|X733.Threshold information"} ]
578 string ThresholdValue;
579
580 [Description (
581 "A string holding the current reading value that exceeds the "
582 "threshold. This is modeled as a string for universal mapping, "
583 "similar to the CIM_Sensor properties in the Device Model."),
584 MappingStrings {"Recommendation.ITU|X733.Threshold information"} ]
585 string ObservedValue;
586 };
587
588 //====================================================================
589 // CIM_AlertInstIndication
590 //====================================================================
591 [Indication,
592 Description (
593 karl 1.1 "A subclass of CIM_AlertIndication that embeds a CIM_Inst"
594 "Indication. It is used when adding AlertIndication data to a "
595 "LifeCycle Indication.") ]
596 class CIM_AlertInstIndication : CIM_AlertIndication
597 {
598 [Override ("AlertType"), Description (
599 "The primary classification of the Indication, defaulted "
600 "to 7, \"Model Change\", for this class. This is done "
601 "because: 1) the primary purpose of AlertInstIndication is "
602 "to add Alert data to a LifeCycle Indication; and 2) LifeCycle "
603 "Indications deal with 'model changes'.") ]
604 uint16 AlertType = 7;
605
606 [EmbeddedObject, Required,
607 Description (
608 "Embeds the InstIndication that is part of this Alert"
609 "Indication. Only the properties selected by the Indication"
610 "Filter's Query are included.") ]
611 string IndObject;
612 };
613
614 karl 1.1 //====================================================================
615 // CIM_IndicationFilter
616 //====================================================================
617 [Description (
618 "CIM_IndicationFilter defines the criteria for generating an "
619 "Indication and what data should be returned in the Indication. "
620 "It is derived from CIM_ManagedElement to allow modeling the "
621 "dependency of the filter on a specific service.") ]
622 class CIM_IndicationFilter: CIM_ManagedElement
623 {
624 [Key, MaxLen (256),
625 Description (
626 "A System's CreationClassName. The Filter is defined in the "
627 "context of a CIM_System, where it is hosted or to which it "
628 "applies. In a future release, a weak relationship will be "
629 "explicitly added to the model. This is not done now to allow "
630 "further refinement of the Filter definition and its "
631 "inheritance tree. Keys are defined now to allow the class to "
632 "be instantiated.") ]
633 string SystemCreationClassName;
634
635 karl 1.1 [Key, MaxLen (256),
636 Description (
637 "A System's Name. The Filter is defined in the "
638 "context of a CIM_System, where it is hosted or to which it "
639 "applies. In a future release, a weak relationship will be "
640 "explicitly added to the model. This is not done now to allow "
641 "further refinement of the Filter definition and its "
642 "inheritance tree. Keys are defined now to allow the class to "
643 "be instantiated.") ]
644 string SystemName;
645
646 [Key, MaxLen (256),
647 Description (
648 "Indicates the name of the class or the subclass used in the "
649 "creation of an instance. When used with the other key "
650 "properties of this class, it allows all instances of this "
651 "class and its subclasses to be uniquely identified.") ]
652 string CreationClassName;
653
654 [Key, Description (
655 "The name of the filter.") ]
656 karl 1.1 string Name;
657
658 [Description (
659 "The path to a local namespace where the Indications "
660 "originate. If NULL, the namespace of the Filter registration "
661 "is assumed.") ]
662 string SourceNamespace;
663
664 [Required, Description (
665 "A query expression that defines the condition(s) under which "
666 "Indications will be generated. For some Indication classes, "
667 "the query expression may also define the instance properties "
668 "to be copied to the CIM_InstIndication's SourceInstance and "
669 "PreviousInstance properties. Query language semantics include "
670 "projection (e.g., Select), range (e.g., From) and predicate "
671 "(e.g., Where)."),
672 ModelCorrespondence {"CIM_IndicationFilter.QueryLanguage"} ]
673 string Query;
674
675 [Required, Description (
676 "The language in which the query is expressed.") ]
677 karl 1.1 string QueryLanguage;
678 };
679
680 //====================================================================
681 // CIM_IndicationHandler
682 //====================================================================
683 [Abstract,
684 Description (
685 "CIM_IndicationHandler is an abstract superclass describing how "
686 "an Indication is to be processd/delivered/'handled'. This may "
687 "define a destination and protocol for delivering Indications, "
688 "or it may define a process to invoke. This class is derived "
689 "from CIM_ManagedElement to allow modeling the "
690 "dependency of the Handler on a specific service.") ]
691 class CIM_IndicationHandler: CIM_ManagedElement
692 {
693 [Key, MaxLen (256),
694 Description (
695 "A System's CreationClassName. The Handler is defined in the "
696 "context of a CIM_System, where it is hosted or to which it "
697 "applies. In a future release, a weak relationship will be "
698 karl 1.1 "explicitly added to the model. This is not done now to allow "
699 "further refinement of the Handler definition and its "
700 "inheritance tree. Keys are defined now to allow the class to "
701 "be instantiated.") ]
702 string SystemCreationClassName;
703
704 [Key, MaxLen (256),
705 Description (
706 "A System's Name. The Handler is defined in the "
707 "context of a CIM_System, where it is hosted or to which it "
708 "applies. In a future release, a weak relationship will be "
709 "explicitly added to the model. This is not done now to allow "
710 "further refinement of the Handler definition and its "
711 "inheritance tree. Keys are defined now to allow the class to "
712 "be instantiated.") ]
713 string SystemName;
714
715 [Key, MaxLen (256),
716 Description (
717 "Indicates the name of the class or the subclass used in the "
718 "creation of an instance. When used with the other key properties "
719 karl 1.1 "of this class, it allows all instances of this class "
720 "and its subclasses to be uniquely identified.") ]
721 string CreationClassName;
722
723 [Key, MaxLen (256),
724 Description (
725 "Indicates the name of this Handler.") ]
726 string Name;
727
728 [Description (
729 "The name of the entity that created and/or maintains this "
730 "Handler.") ]
731 string Owner;
732 };
733
734 //====================================================================
735 // CIM_IndicationHandlerXMLHTTP
736 //====================================================================
737 [Description (
738 "CIM_IndicationHandlerXMLHTTP describes the destination for "
739 "Indications to be delivered via HTTP, using a cimXML "
740 karl 1.1 "representation.") ]
741 class CIM_IndicationHandlerXMLHTTP : CIM_IndicationHandler
742 {
743 [Required, Description (
744 "The destination URL to which HTTP/cimXML Indication messages "
745 "are to be delivered. The scheme prefix is implied and is not "
746 "required, but must be 'http:' if specified.") ]
747 string Destination;
748 };
749
750 //====================================================================
751 // CIM_IndicationSubscription
752 //====================================================================
753 [Association,
754 Description (
755 "CIM_IndicationSubscription describes a flow of Indications. "
756 "The flow is specified by the referenced Filter, and directed to "
757 "the referenced destination or process in the Handler.") ]
758 class CIM_IndicationSubscription
759 {
760 [Key, Description (
761 karl 1.1 "The Filter that defines the criteria and data of the possible "
762 "Indications of this subscription.") ]
763 CIM_IndicationFilter REF Filter;
764
765 [Key, Description (
766 "The Handler addressing delivery of the possible Indications of "
767 "this subscription.") ]
768 CIM_IndicationHandler REF Handler;
769
770
771 };
|