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

   1 mike  1.2 // ==================================================================
   2           // Title:       Exchange Standards 1.2 MOF Specification
   3           // Filename:    CIM_Support26.MOF
   4           // Version:     2.6
   5           // Release:     0
   6           // Date:        06/01/2001
   7           // ===================================================================
   8           // Copyright "2001" 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 cited should always be noted.
  17           // Description: The Solution Exchange Standard (SES) defines an object model 
  18           //              for the exchange of knowledge.  The Service Incident Exchange
  19           //              Standard (SIS) adds a transaction model to SES.
  20           // ===================================================================
  21           // Author:      DMTF Support Working Group
  22 mike  1.2 // Editor:      John Chmaj, Microsoft Corp. - jchmaj@microsoft.com
  23           // Editor:      Dave Lawrence, Smart Technology Enablers - dlawrence@enablers.com
  24           // 11/17/2000   Version 1.2j  
  25           //              CR562: Changed property names using reserved words
  26           //                PRS_Resource.Type to ResourceType
  27           //                PRS_Attachment.Reference to AttachmentReference
  28           //                PRS_Attachment.Size to AttachmentSize
  29           //                PRS_Attachment.Object to AttachmentObject
  30           //                PRS_Statement.Role to StatementRole
  31           //                PRS_Statement.Operator to StatementOperator
  32           //                PRS_Revision.Date to RevisionDate
  33           //                PRS_Activity.New to NewKeys
  34           //                PRS_Transaction.State to TransactionState
  35           //              CR563: Added deprecated qualifier to deprecated properties
  36           //                PRS_Transaction.TransactionName
  37           //                PRS_Activity.ParameterList
  38           //              Removed Description from PRS_Feature and PRS_Resource (already
  39           //                inherited from PRS_ExchangeElement)
  40           //              Added MinValue and MaxValue to the following:
  41           //                PRS_Problem.Likelihood
  42           //                PRS_Problem.Impact
  43 mike  1.2 //                PRS_Resolution.Confidence
  44           //                PRS_Statement.Relevance 
  45           //              Broke long lines over two lines
  46           // 08/08/2000   Version 1.2i  CR525
  47           //              Added missing Association qualifier to both PRS_ContactOrganization and
  48           //              PRS_ContactPerson.
  49           // 05/02/2000   Version 1.2h
  50           //              Converted all CIM_Dependency children to use original property names:
  51           //                  Antecedent and Dependent
  52           // 03/07/2000   Version 1.2g
  53           //              Added Association qualifier to all association classes
  54           //              Added spaces to end of descriptions where they were missing
  55           //              Added Notification_Pending state to PRS_Transaction State property
  56           // 02/03/2000   Version 1.2f
  57           //              Added definitions for PRS_SISServices method return values and
  58           //              CompletionStatus parameters as well as PRS_Transaction CompletionStatus
  59           // 01/26/2000   Version 1.2e
  60           //              Changed PRS_ExchangeElement description
  61           // 01/21/2000   Version 1.2d
  62           //              Fixed spelling error in PRS_Category
  63           // 01/20/2000   Version 1.2c
  64 mike  1.2 //              Added ParameterList property back to PRS_Activity for backward 
  65           //                compatibility
  66           //              Removed methods from PRS_Transaction and edited property descriptions
  67           //              Corrected data types of some properties to match specification (strings
  68           //                to uint8)
  69           //              Added some missing superclass references ( : CIM_Dependency)
  70           // 01/17/2000   Version 1.2b
  71           //              Reformatted MOF and expanded description fields
  72           //              Incorporated SIS Transactions using CIM over HTTP
  73           //                  Added properties and methods to PRS_Transaction
  74           //                  Added DirtyFlag to PRS_ExchangeElement
  75           //                  Added PRS_SISService
  76           //                  
  77           // ==================================================================
  78           
  79           
  80           // ==================================================================
  81           // Pragmas
  82           // ==================================================================
  83           
  84           #pragma locale ("en_US")
  85 mike  1.2 
  86           
  87           // ================================================================== 
  88           //    PRS_ExchangeElement
  89           // ==================================================================
  90           
  91           [
  92               Abstract, 
  93               Description (
  94               	"PRS_ExchangeElement is an abstract base class for all classes "
  95           	    "in the Solution and Service Incident object model.  As an "
  96           	    "abstract class it is never instantiated.\n"
  97           	    "\n"
  98           	    "PRS_ExchangeElement exists to provide a single anchor point "
  99           	    "for associations that may be made to any Solution or Service "
 100           	    "Incident object.  For example, Administrative or Attachment "
 101           	    "instances may be associated with any object derived from "
 102           	    "PRS_ExchangeElement. "
 103                   "To support this generic association capability, the PRS_AdminAssociation "
 104                   "and PRS_Attached associations both derive from the CIM_Dependency "
 105                   "association and override the Antecedent property of that class to be a "
 106 mike  1.2         "PRS_ExchangeElement REF. "
 107               )
 108           ]
 109           class PRS_ExchangeElement : CIM_ManagedElement
 110           {
 111               [
 112           	    Key, 
 113           	    Description (
 114           	        "The PRSUniqueName property is a Globally Unique IDentifier "
 115           	        "(GUID) also known as a Universally Unique IDentifier (UUID). "
 116           	        "This property allows Solution and Service Incident objects "
 117           	        "to be used by multiple Solutions or Service Incidents without "
 118           	        "duplication.  In addition, all Solution or Service Incidents "
 119           	        "containing a unique object are updated when the object is "
 120           	        "updated."
 121           	    )
 122               ]
 123               string PRSUniqueName;
 124           
 125               [
 126           	    ValueMap {"0", "1", "2", "3"}, 
 127 mike  1.2 	    Values {"Clean", "New", "Modified", "Deleted"}, 
 128           	    Description(
 129                       "The DirtyFlag is used by the SISService Start Transaction "
 130           	        "method to determine whether an ExchangeElement has "
 131                       "been created, modified or deleted since the last Transaction. " 
 132                       "Any object not marked 'Clean' is included in the next "
 133                       "Transaction.\n"
 134           	        "\n"
 135           	        "It is the responsibility of the entity creating, modifying or "
 136           	        "deleting the object derived from ExchangeElement to set this "
 137           	        "property appropriately.\n"
 138           	        "\n"
 139           	        "This property value is set to 'Clean' by an invocation of the "
 140           	        "Transaction Complete method with a Status parameter of zero (0)."
 141           	    )
 142               ]
 143               uint8 DirtyFlag;
 144           };
 145           
 146           
 147           // ================================================================= 
 148 mike  1.2 //    PRS_Solution
 149           // ==================================================================
 150           
 151           [
 152               Description (
 153                   "PRS_Solution is the root class of a set of associated classes "
 154                   "used to describe a single Solution.  If a Solution is associated "
 155                   "with multiple Problems or Resolutions, all of the Problems "
 156                   "described are related to all of the Resolutions described.  The "
 157                   "reverse is also true.  All of the Resolutions described are "
 158                   "related to all of the Problems described in the Solution."
 159                   "\n"
 160                   "\n"
 161                   "PRS_Solution is directly associated to one or more of the "
 162                   "following classes:\n"
 163                   "\n"
 164                   "    PRS_Reference\n"
 165                   "    PRS_Problem\n"
 166                   "    PRS_Resolution\n"
 167                   "\n"
 168               )
 169 mike  1.2 ]
 170           class PRS_Solution : PRS_ExchangeElement
 171           {
 172               [
 173           	    Description ("The Solution title.")
 174               ]
 175               string Title;
 176           
 177               [
 178           	    Description ("A brief description of the Solution.")
 179               ]
 180               string SolutionAbstract;
 181           
 182               [
 183           	    ValueMap {"0", "1", "2", "254", "255"},
 184           	    Values {"Reference", "Diagnostic", "How To", "Other", "Unknown"}, 
 185           	    Description (
 186           	        "The SolutionType suggests the type of knowledge contained "
 187           	        "in the Solution.  Depending on the type, the Solution may or "
 188           	        "may not include particular objects.  For example, a "
 189                       "'Reference' Solution describes non-diagnostic technical or "
 190 mike  1.2             "general information using PRS_Statement objects. A 'Diagnostic' "
 191           	        "Solution includes one or more PRS_Problem and PRS_Resolution objects. "
 192           	        "A 'How To' Solution describes how to solve a particular Problem "
 193           	        "described by a PRS_Problem in a series of sequential steps within "
 194           	        "a PRS_Resolution."
 195                   ) 
 196               ] 
 197               uint8 SolutionType;
 198           };
 199                
 200           
 201           // ==================================================================
 202           //    PRS_SolutionElement
 203           // ==================================================================
 204           
 205           [
 206               Abstract, 
 207               Description (
 208                   "PRS_SolutionElement is an abstract base class for non-Category objects "
 209           	    "directly associated with a Solution.  This includes:\n"
 210           	    "\n"
 211 mike  1.2 	    "    PRS_Reference\n"
 212           	    "    PRS_Problem\n"
 213           	    "    PRS_Resolution\n"
 214           	    "\n"
 215           	    "PRS_SolutionElement provides a common reference for these "
 216           	    "objects to be associated with PRS_Expression objects through "
 217           	    "the SolutionExpression association.\n"
 218           	    "\n"
 219           	    "In addition, all of the derived objects may be retrieved with a "
 220           	    "single query for the common super-class."
 221               )
 222           ]
 223           class PRS_SolutionElement : PRS_ExchangeElement
 224           {
 225           };
 226                
 227           
 228           // ===================================================================
 229           //    PRS_Reference
 230           // ===================================================================
 231           
 232 mike  1.2 [
 233               Description (
 234                   "PRS_Reference is a placeholder to support links between "
 235           	    "PRS_Expression objects and a PRS_Solution.  It does not "
 236           	    "have any properties. A 'Reference' "
 237           	    "Solution uses PRS_Statement objects to describe general, "
 238                   "non-diagnostic knowledge and may not include any PRS_Problem "
 239                   "and PRS_Resolution instances. "
 240               )
 241           ]
 242           class PRS_Reference : PRS_SolutionElement
 243           {
 244           };
 245           
 246           
 247           // ===================================================================
 248           //    PRS_Problem
 249           // ===================================================================
 250           
 251           [
 252               Description (
 253 mike  1.2         "PRS_Problem is the root object of a set of associated objects "
 254           	    "that describe a Problem.  One or more Problems may be associated "
 255           	    "with a Solution.\n"
 256           	    "\n"
 257           	    "The Problem is described by PRS_Statement and PRS_Product instances "
 258           	    "indirectly associated to the PRS_Problem through a PRS_Expression."
 259               )
 260           ]
 261           class PRS_Problem : PRS_SolutionElement
 262           {
 263               [
 264           	    Description (
 265                       "The Likelihood describes the potential for the Problem to occur. "
 266           	        "The value of this property shall be an integer value in the range of "
 267           	        "0 to 100, inclusive."
 268             	    ), 
 269                     MinValue(0), MaxValue(100)
 270               ]
 271               uint16 Likelihood;
 272           
 273               [
 274 mike  1.2     	Description (
 275                       "The Impact describes the severity of the problem. "
 276           	        "The value of this property shall be an integer value in the range of "
 277           	        "0 to 100, inclusive."
 278                   ), 
 279                     MinValue(0), MaxValue(100)
 280               ]
 281               uint16 Impact;
 282           };
 283           
 284           
 285           // ===================================================================
 286           //    PRS_Resolution
 287           // ===================================================================
 288           
 289           [
 290               Description (
 291                   "PRS_Resolution is the root object of a set of associated objects "
 292           	    "that describe a the resolution to a Problem.  One or more Resolutions "
 293           	    "may be associated with a Solution.\n"
 294           	    "\n"
 295 mike  1.2 	    "The Resolution is described by PRS_Statement and PRS_Product instances "
 296           	    "indirectly associated to the PRS_Resolution through a PRS_Expression."
 297               )
 298           ]
 299           class PRS_Resolution : PRS_SolutionElement
 300           {
 301           
 302               [
 303               	Description (
 304           	        "The Confidence describes the potential for the Resolution to correct "
 305           	        "the Problem or Problems associated with the PRS_Solution. "
 306           	        "The value of this property shall be an integer value in the range of "
 307           	        "0 to 100, inclusive."
 308           	    ), 
 309                     MinValue(0), MaxValue(100)
 310               ]
 311               uint16 Confidence;
 312           };
 313           
 314           
 315           // ===================================================================
 316 mike  1.2 //    PRS_SolutionHasElement 
 317           // ===================================================================
 318           
 319           [
 320               Association, 
 321               Abstract, 
 322               Aggregation, 
 323               Description (
 324               	"PRS_SolutionHasElement is an abstract base class for associating "
 325           	    "PRS_Solution with objects derived from PRS_SolutionElement. This "
 326           	    "association class allows all PRS_Reference, PRS_Problem and "
 327           	    "PRS_Resolution objects to be retrieved with a single query."
 328               )
 329           ]
 330           class PRS_SolutionHasElement : CIM_Dependency
 331           {
 332               [
 333                   Override ("Antecedent"),
 334           	    Aggregate, 
 335           	    Description ("The PRS_Solution root object of the Solution."), 
 336           	    Min (1)
 337 mike  1.2     ]
 338               PRS_Solution REF Antecedent;
 339           
 340               [
 341                   Override ("Dependent"),
 342               	Description (
 343                       "The PRS_Reference, PRS_Problem or PRS_Resolution aggregated "
 344                       "into the Solution by this association."
 345           	    )
 346               ]
 347               PRS_SolutionElement REF Dependent;
 348           };
 349           
 350           
 351           // ===================================================================
 352           //    PRS_SolutionReference 
 353           // ===================================================================
 354           
 355           [
 356               Association, 
 357               Aggregation, 
 358 mike  1.2     Description ("PRS_SolutionReference aggregates a Reference into a Solution.")
 359           ]
 360           class PRS_SolutionReference : PRS_SolutionHasElement
 361           {
 362               [
 363                   Override ("Dependent"), 
 364                   Description ("The PRS_Reference aggregated into the Solution.")
 365               ]
 366               PRS_Reference REF Dependent;
 367           };
 368           
 369           
 370           // ===================================================================
 371           //    PRS_SolutionProblem 
 372           // ===================================================================
 373           
 374           [
 375               Association, 
 376               Aggregation, 
 377               Description ("PRS_SolutionProblem aggregates a Problem into a Solution.")
 378           ]
 379 mike  1.2 class PRS_SolutionProblem : PRS_SolutionHasElement
 380           {
 381               [
 382           	Override ("Dependent"), 
 383           	Description ("The PRS_Problem aggregated into the Solution.")
 384               ]
 385               PRS_Problem REF Dependent;
 386           };
 387           
 388           
 389           // ===================================================================
 390           //    PRS_SolutionResolution
 391           // ===================================================================
 392           
 393           [
 394               Association, 
 395               Aggregation, 
 396               Description ("PRS_SolutionResolution aggregates a Resolution into a Solution.")
 397           ]
 398           class PRS_SolutionResolution : PRS_SolutionHasElement
 399           {
 400 mike  1.2     [
 401           	    Override ("Dependent"), 
 402           	    Description ("The PRS_Solution aggregated into the Solution.")
 403               ]
 404               PRS_Resolution REF Dependent;
 405           };
 406           
 407           
 408           // ================================================================= 
 409           //    PRS_Category
 410           // ==================================================================
 411           
 412           [
 413               Description (
 414               	"PRS_Category is used to classify the components of a "
 415           	    "Solution.  Hierarchical classifications are created by associating "
 416           	    "PRS_CategoryParentChild with multiple PRS_Category instances."
 417               )
 418           ]
 419           class PRS_Category : PRS_ExchangeElement
 420           {
 421 mike  1.2     [
 422               	Description (
 423                       "The specific value for the category.  For example, 'HP Laserjet' "
 424                       "would be a value for a category containing printer names. "
 425                   )
 426               ]
 427               string CategoryContents;
 428           
 429               [
 430           	    Description (
 431                       "The type of category. Used to give additional semantics to the "
 432                       "category.  For example, a Category of Type 'Printers' would "
 433                       "qualify the list of category values for a list of printers.\n" 
 434                       "\n"
 435                       "Note: the relationship of Category Type to Category Value "
 436                       "expresses no intrinsic hierarchy.  If a tree of relationships "
 437                       "exists to define categories and sub-categories, this should be "
 438                       "defined using CategoryParentChild associations."
 439                   )
 440               ]
 441               string CategoryType;        
 442 mike  1.2 };
 443                
 444           
 445           // ===================================================================
 446           //    PRS_SolutionCategory 
 447           // ===================================================================
 448           
 449           [
 450               Association, 
 451               Description (
 452           	    "PRS_SolutionCategory associates PRS_Solution with a PRS_Category "
 453           	    "for classification purposes."
 454               )
 455           ]
 456           class PRS_SolutionCategory : CIM_Dependency
 457           {
 458               [
 459                   Override ("Antecedent"),
 460               	Min(1),
 461                   Description ("The PRS_Solution being classified.") 
 462               ]
 463 mike  1.2     PRS_Solution REF Antecedent;
 464           
 465               [
 466                   Override ("Dependent"),
 467           	    Description (
 468                       "The specific PRS_Category being used to classify the Solution."
 469           	    )
 470               ]
 471               PRS_Category REF Dependent;
 472           };
 473           
 474           
 475           // ===================================================================
 476           //    PRS_Categorization 
 477           // ===================================================================
 478           
 479           [
 480               Association, 
 481               Description (
 482               	"PRS_Categorization associates PRS_Reference, PRS_Problem "
 483           	    "or PRS_Resolution with a PRS_Category for classification purposes. "
 484 mike  1.2         "For example, a Category named 'Printing Issues' can be defined "
 485                   "for a Problem using the Categorization association between a "
 486                   "PRS_Problem and a PRS_Category. "
 487               )
 488           ]
 489           class PRS_Categorization : CIM_Dependency
 490           {
 491               [
 492                   Override ("Antecedent"),
 493                   Description ("The PRS_Category used for classification.") 
 494               ]
 495               PRS_Category REF Antecedent;
 496           
 497               [
 498                   Override ("Dependent"),
 499           	    Min(1),
 500           	    Description (
 501                       "The specific PRS_Reference, PRS_Problem or PRS_Resolution "
 502                       "classified by this association."
 503           	    )
 504               ]
 505 mike  1.2     PRS_SolutionElement REF Dependent;
 506           };
 507           
 508           
 509           // ===================================================================
 510           //    PRS_CategoryParentChild 
 511           // ===================================================================
 512           
 513           [
 514               Association, 
 515               Description("PRS_CategoryParentChild is used to define classification hierarchies.")
 516           ]
 517           class PRS_CategoryParentChild : CIM_Dependency
 518           {
 519               [
 520                   Override ("Antecedent"),
 521                   Description ("The parent PRS_Category used for classification.") 
 522               ]
 523               PRS_Category REF Antecedent;
 524           
 525               [
 526 mike  1.2         Override ("Dependent"),
 527           	    Description (
 528                       "The child PRS_Category used for classification."
 529                   )
 530               ]
 531               PRS_Category REF Dependent;
 532           };
 533           
 534           
 535           // ================================================================= 
 536           //    PRS_ExpressionElement   
 537           // ==================================================================
 538           
 539           [
 540               Abstract,
 541               Description (
 542                   "PRS_ExpressionElement is an abstract base class for PRS_Products "
 543                   "and PRS_Statements.  It provides a common association point for objects "
 544                   "associated with PRS_Expressions."
 545               )
 546           ]
 547 mike  1.2 class PRS_ExpressionElement : PRS_ExchangeElement
 548           {
 549           };
 550           
 551           
 552           // ================================================================= 
 553           //    PRS_Expression   
 554           // ==================================================================
 555                   
 556           [
 557               Description (
 558                   "PRS_Expression defines a specific relationship between "
 559                   "PRS_ExpressionElements associated with PRS_SolutionElements. "
 560               )
 561           ]
 562           class PRS_Expression : PRS_ExpressionElement
 563           {
 564               [
 565                   Description (
 566                       "The operator to be used with the associated PRS_ExpressionElements. "
 567                       "The 'AND', 'OR' and 'NOT' operators are the only operators "
 568 mike  1.2             "currently defined. They must be defined as an uppercase string."
 569                   )
 570           	]
 571               string Relation;
 572           };
 573           
 574           
 575           // ================================================================= 
 576           //    PRS_Product   
 577           // ==================================================================
 578           
 579           [
 580               Description (
 581                   "PRS_Product is used to describe a single product to associate with a "
 582                   "PRS_Expression."
 583               )         
 584           ]
 585           class PRS_Product : PRS_ExpressionElement
 586           {
 587               [
 588                   Description ("The vendor of the product.")
 589 mike  1.2 	]
 590               string Vendor;
 591           
 592               [
 593                   Description ("The make and or model of the product.")
 594               ]
 595               string ProductName;
 596           
 597               [
 598                   Description ("The version of the product.")
 599           	]
 600               string Version;
 601                   
 602               [
 603                   Description (
 604                       "The order of relevance of this product to an associated "
 605                       "PRS_SolutionElement.  These include PRS_Reference, PRS_Problem "
 606                       "or PRS_Resolution."
 607                   )
 608           	]
 609               string Order;        
 610 mike  1.2 };
 611           
 612           
 613           // ================================================================= 
 614           //    PRS_Statement   
 615           // ==================================================================
 616           
 617           [
 618               Description (
 619                   "PRS_Statement contains the text describing a problem, any " 
 620                   "relevant background information, and its resolution. Statements " 
 621                   "are units of text ranging from brief sentences or phrases to " 
 622                   "paragraphs or pages. There is no limit to the number of " 
 623                   "PRS_Statements within a Solution, as long as they support the " 
 624                   "intent and focus of their root class.  Root classes include: "
 625                   "PRS_Reference, PRS_Problem or PRS_Resolution./n"
 626                   "\n"
 627                   "PRS_Statements may be grouped together to build compound " 
 628                   "'sentences'. For example,/n " 
 629                   "   StatementA = Printer output is blotchy./n "
 630                   "   StatementB = Print jobs per day are less than 50./n "
 631 mike  1.2         "ExpressionA = StatementA AND StatementB."
 632               )
 633           ]
 634           class PRS_Statement : PRS_ExpressionElement
 635           {
 636               [
 637                   ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11",
 638                       "254", "255"
 639                   },
 640                   Values {"Description", "Symptom", "Error_Message", "Objective", "Evidence", 
 641                       "Cause", "Work_Around", "Fix", "Answer", "Keyword", "Changes", "Title", 
 642                       "Other", "Unknown"
 643                   }, 
 644                   Description (
 645                       "StatementRole describes how the PRS_Statement relates to the larger "
 646                       "context. "
 647                       "For example, is the PRS_Statement describing a Fix or a Symptom? "
 648                       "'Description' is generic text without a specific diagnostic "
 649                       "application. "
 650                       "'Symptom' describes initial observable incident or behavior that "
 651                       "the user reports. "
 652 mike  1.2             "'Error_Message' is a specific type of symptom that the user "
 653                       "reports, describing a specific error condition reported. "
 654                       "'Objective' is what the user wants to accomplish, often "
 655                       "expressed as a positive condition.  FOr example, how to print "
 656                       "on a network. "
 657                       "'Evidence' is information that is collected to diagnose the "
 658                       "problem after the symptom is reported. "
 659                       "'Cause' is a description of the underlying facts or factors "
 660                       "that engender or relate this behavior. "
 661                       "'Work_around' is information that lets the user work, but does "
 662                       "not correct the problem completely. "
 663                       "'Fix' is information that fixes the problem completely. "
 664                       "'Answer' is the information given to the user such as steps to "
 665                       "perform, wording to support their environment and understanding. "
 666                       "'Keyword' is a specific classification using defined words or "
 667                       "phrases. "
 668                       "'Changes' describes a recent change in the environment which "
 669                       "could affect the problem or resolution. "
 670                       "'Title is the title applying to associated PRS_Statements. "
 671                       "Usually associated via an 'and' expression. "
 672                   )
 673 mike  1.2     ] 
 674               uint8 StatementRole;
 675           
 676               [
 677                   Description ("The descriptive text used for the PRS_Statement.")
 678               ]
 679               string Text;
 680           
 681               [
 682                   Description (
 683                       "When the PRS_Adminstrative object indicates Level 2 compliance, "
 684                       "StatementOperator describes the relationship between an associated "
 685                       "PRS_Feature and the FeatureValue property.  This property is "
 686                       "ignored if there is no PRS_Feature associated with this "
 687                       "PRS_Statement."
 688                   )
 689           	]
 690               string StatementOperator;
 691           
 692               [
 693                   Description (
 694 mike  1.2             "When the PRS_Adminstrative object indicates Level 2 compliance, "
 695                       "FeatureValue is the specific value selected from the associated "
 696                       "PRS_Feature. This property is ignored if there is no PRS_Feature "
 697                       "associated with this PRS_Statement."
 698                   )
 699           	]
 700               string FeatureValue;
 701           
 702               [
 703                   Description (
 704                       "Order is used to sequence PRS_Statements associated "
 705                       "with a single PRS_Expression to allow a Consumer to process "
 706                       "the information in the order desired by the Producer."
 707                   )
 708           	]
 709               string Order;        
 710           
 711               [
 712                   Description (
 713                       "Importance of this Statement. "
 714           	        "The value of this property shall be an integer value in the "
 715 mike  1.2             "range of 0 to 100, inclusive."
 716                   )
 717           	]
 718               uint16 Relevance;        
 719           };
 720           
 721           // ================================================================= 
 722           //    PRS_Feature
 723           // ==================================================================
 724           
 725           [
 726               Description (
 727                   "PRS_Feature is used for structured diagnostic data, including "
 728                    "specific data values like steps or conditions.  For example, "
 729                    "consider a PRS_Statement with a Text property value of: \n"
 730                    "\n"
 731                    "    Print jobs per day are less than 50\n" 
 732                    "\n"
 733                    "This could be described using a PRS_Feature as follows:\n"
 734                    "\n"
 735                    "    Description:  'Print jobs per day' \n"
 736 mike  1.2          "    Prompt:       'How many print jobs per day?' \n"
 737                    "    ValidValues:  '10' '50' '100' \n"
 738                    "    DataType:     'Integer' \n"
 739                    "\n"
 740                    "and the associated PRS_Statement would contain:\n"
 741                    "\n"
 742                    "    Operator:     '<' \n"
 743                    "    FeatureValue: '50' \n"
 744               )
 745           ]
 746           class PRS_Feature : PRS_ExchangeElement
 747           {
 748               [
 749                   Description ("Prompt presented through user interface.")
 750               ]
 751               string Prompt;
 752           
 753               [
 754                   Description ("Valid values for this PRS_Feature.")
 755           	]
 756               string ValidValues;
 757 mike  1.2 
 758               [
 759                   ValueMap {"0", "1", "2", "3", "4", "5", "254", "255"},
 760                   Values {
 761                       "String", "Integer", "Float", "Date/Time", "Boolean",
 762                       "Binary", "Other", "Unknown"
 763                   },
 764                   Description ("Data Type used for PRS_Statement FeatureValue property")
 765           	]
 766               uint8 DataType;        
 767           };
 768           
 769           
 770           // ================================================================= 
 771           //    PRS_Resource   
 772           // ==================================================================
 773           
 774           [
 775               Description (
 776                   "Each PRS_Resolution may have an associated cost of implementation. "
 777                   "This cost may have several components such as time, material " 
 778 mike  1.2         "costs, labor cost, etc. To capture these costs, a PRS_Resouce is "
 779                   "associated with a PRS_Resolution.  For Service Incidents, one or "
 780                   "more PRS_Resource objects may be associated with an Activity."
 781               )
 782           ]
 783           class PRS_Resource : PRS_ExchangeElement
 784           {
 785               string ResourceType;
 786           
 787               [
 788                   Description ("Number of units of resource used.")
 789               ]
 790               uint16 Quantity;        
 791           
 792               [
 793                   Description ("Unit of measure for this resource.")
 794           	]
 795               string Units;        
 796           };
 797           
 798           
 799 mike  1.2 // ===================================================================
 800           //  PRS_ExpressionLink   
 801           // ===================================================================
 802           
 803           [
 804               Association,  
 805               Aggregation,
 806               Description (
 807                   "Associates PRS_Expression with PRS_ExpressionElements "
 808                   "such as PRS_Expression, PRS_Product, and PRS_Statement."
 809               )
 810           ]
 811           class PRS_ExpressionLink : CIM_Dependency
 812           {
 813               [
 814                   Aggregate,
 815                   Override ("Antecedent"),
 816                   Min(1),
 817                   Description ("The parent PRS_Expression.") 
 818               ]
 819               PRS_Expression REF Antecedent;
 820 mike  1.2 
 821               [
 822                   Override ("Dependent"),
 823           	    Min(1),
 824           	    Description (
 825                       "The child PRS_ExpressionElement.  Either PRS_Expression, "
 826                       "PRS_Product or PRS_Statement."
 827           	    )
 828               ]
 829               PRS_ExpressionElement REF Dependent;
 830           };
 831           
 832           
 833           // ===================================================================
 834           //    PRS_ProductParentChild
 835           // ===================================================================
 836           
 837           [
 838               Association,  
 839               Aggregation,
 840               Description (
 841 mike  1.2          "Products may exist in a hierarchy of relationships with related " 
 842                    "Products. If a Producer deems these hierarchy relationships " 
 843                    "are relevant to the current Problem or Resolution, then the "
 844                    "position of the Product in a hierarchy can be implied using one " 
 845                    "of two types of relationships: 'is a' and 'has a'. An 'is a' " 
 846                    "relationship implies a classification, such as versioning or typing. " 
 847                    "A 'has a' relationship implies that one product contains another. " 
 848                    "The PRS_ProductParentChild association is used to imply an 'is a' " 
 849                    "hierarchy. Use the ProductComponent association to imply 'has a' "
 850                    "relationships.")
 851           ]
 852           class PRS_ProductParentChild : CIM_Dependency
 853           {
 854               [
 855                   Aggregate, 
 856                   Override ("Antecedent"),
 857           	    Description ("The parent PRS_Product.") 
 858           	]
 859               PRS_Product REF Antecedent;
 860           
 861               [
 862 mike  1.2         Override ("Dependent"),
 863                   Description ("The child PRS_Product.")
 864           	]
 865               PRS_Product REF Dependent;
 866           };
 867           
 868           
 869           // ===================================================================
 870           //    PRS_ProductComponent   
 871           // ===================================================================
 872           
 873           [
 874               Association,  
 875               Aggregation,
 876               Description (
 877                    "PRS_ProductComponent is used to describe 'has a' relationships "
 878                    "between Products and their components parts.  See "
 879                    "PRS_ProductParentChild for 'is a' relationships."
 880               )
 881           ]
 882           class PRS_ProductComponent : CIM_Dependency
 883 mike  1.2 {
 884               [
 885                   Aggregate, 
 886                   Override ("Antecedent"),
 887                   Description ("The PRS_Product which contains the component.") 
 888           	]
 889               PRS_Product REF Antecedent;
 890           
 891               [
 892                   Override ("Dependent"),
 893                   Description ("The component PRS_Product.")
 894           	]
 895               PRS_Product REF Dependent;
 896           };
 897           
 898           
 899           // ===================================================================
 900           //    PRS_ProductAsset   
 901           // ===================================================================
 902           
 903           [
 904 mike  1.2     Association, 
 905               Description (
 906                   "PRS_ProductAsset is used to provide specific information about "
 907                   "a PRS_Product.  PRS_ProductAsset associates this information to a "
 908                   "PRS_Product using one or more Statements associated to a "
 909                   "PRS_Expression."
 910               )
 911           ]
 912           class PRS_ProductAsset : CIM_Dependency
 913           {
 914               [
 915                   Override ("Antecedent"),
 916                   Description ("The product.") 
 917           	]
 918               PRS_Product REF Antecedent;
 919           
 920               [
 921                   Override ("Dependent"),
 922                   Description ("The expression.")
 923           	]
 924               PRS_Expression REF Dependent;
 925 mike  1.2 };
 926           
 927           
 928           // ===================================================================
 929           //    PRS_StatementFeature   
 930           // ===================================================================
 931           
 932           [
 933               Association, 
 934               Description ("Associates PRS_Statement with PRS_Feature.")
 935           ]
 936           class PRS_StatementFeature : CIM_Dependency
 937           {
 938               [
 939                   Override ("Antecedent"),
 940                   Description ("The PRS_Statement.")
 941               ]
 942               PRS_Statement REF Antecedent;
 943           
 944               [
 945                   Override ("Dependent"),
 946 mike  1.2         Description ("The PRS_Feature.")
 947           	]
 948               PRS_Feature REF Dependent;
 949           };
 950           
 951           
 952           // ===================================================================
 953           //    PRS_FeatureResource   
 954           // ===================================================================
 955           
 956           [
 957               Association, 
 958               Description (
 959                   "Associates PRS_Feature with PRS_Resource. "
 960                   "Used to track specific labor and costs associated with specific "
 961                   "tasks defined in Feature objects. "
 962               )
 963           ]
 964           class PRS_FeatureResource : CIM_Dependency
 965           {
 966               [
 967 mike  1.2         Override ("Antecedent"),
 968                   Description ("The PRS_Feature.")
 969           	]
 970               PRS_Feature REF Antecedent;
 971           
 972               [
 973                   Override ("Dependent"),
 974                   Description ("The PRS_Resource.")
 975           	]
 976               PRS_Resource REF Dependent;
 977           };
 978           
 979           
 980           // ===================================================================
 981           //    PRS_ResolutionResource   
 982           // ===================================================================
 983           
 984           [
 985               Association, 
 986               Description ("Associates PRS_Resolution with PRS_Resource")
 987           ]
 988 mike  1.2 class PRS_ResolutionResource : CIM_Dependency
 989           {
 990               [
 991                   Override ("Antecedent"),
 992                   Description ("The PRS_Resource.")
 993           	]
 994               PRS_Resource REF Antecedent;
 995           
 996               [
 997                   Override ("Dependent"),
 998                   Description ("The PRS_Resolution.")
 999               ]
1000               PRS_Resolution REF Dependent;
1001           };
1002           
1003           
1004           // ===================================================================
1005           //    PRS_Solution Expression   
1006           // ===================================================================
1007           
1008           [
1009 mike  1.2     Association,  
1010               Aggregation,
1011               Description (
1012                   "Associates PRS_SolutionElements (PRS_Reference, PRS_Problem "
1013                   "or PRS_Resolution) with PRS_Expression."
1014               )
1015           ]
1016           class PRS_SolutionExpression : CIM_Dependency
1017           {
1018               [
1019                   Aggregate, 
1020           	    Min (1),
1021                   Override ("Antecedent"),
1022           	    Description ("The PRS_SolutionElement.")
1023            	]
1024               PRS_SolutionElement REF Antecedent;
1025           
1026               [
1027                   Min (1), 
1028                   Override ("Dependent"),
1029                   Description ("The PRS_Expression.")
1030 mike  1.2 	]
1031               PRS_Expression REF Dependent;
1032           };
1033           
1034           
1035           // ===================================================================
1036           //    PRS_Administrative
1037           // ===================================================================
1038           
1039           [
1040               Description (
1041                   "PRS_Administrative defines administrative information about "
1042                   "associated objects.  There must be at least one PRS_Administrative " 
1043                   "instance associated with a PRS_Solution. Administrative "
1044                   "information is inherited from a parent object. \n"
1045                   "\n"
1046                   "If the administrative information among objects within a Solution "
1047                   "is not the same, additional PRS_Administrative instances may be "
1048                   "associated with other objects within the Solution.  All instances under "
1049                   "a specific parent inherit their administrative information unless "
1050                   "there is an PRS_Administrative instance associated with an instance.\n"
1051 mike  1.2         "\n"
1052                   "For example, if there is a PRS_Administrative instance associated "
1053                   "with a PRS_Problem instance, all of the PRS_Statement and PRS_Product "
1054                   "instances within the Problem use the same Administrative information "
1055                   "as the PRS_Problem instance."
1056               )
1057           ]
1058           class PRS_Administrative : PRS_ExchangeElement
1059           {
1060               [
1061                   Values {"0", "1", "2"},
1062                   Description (
1063                       "Level 0 means all information within a Reference, Problem or "
1064                       "Resolution is conveyed by a single PRS_Statement.\n"
1065                       "\n"
1066                       "Level 1 means there may be multiple PRS_Statement instances "
1067                       "within a Reference, Problem or Resolution.\n"
1068                       "\n"
1069                       "Level 2 means that a PRS_Statement may be associated with "
1070                       "a PRS_Feature instance within a Reference, Problem or Resolution."
1071                   )
1072 mike  1.2 	]
1073               uint16 ComplianceLevel;
1074           
1075               [
1076                   ValueMap {"0", "1", "2", "254", "255"},
1077                   Values {"Draft", "Reviewed", "Published", "Other", "Unknown"}, 
1078                   Description (
1079                       "Editorial status of the document. "
1080                       "If 'Draft', information is complete, but unedited. "
1081                       "If 'Reviewed', an editorial review has been completed. "
1082                       "If 'Published', information has been reviewed and approved "
1083                       "for distribution." 
1084                   )
1085           	]
1086               uint8 DocumentStatus;
1087           
1088               [
1089                   ValueMap {"0", "1", "2", "3", "254", "255"},
1090                   Values {"Proprietary", "Internal", "Partner", "Public", "Other", "Unknown"}, 
1091                   Description (
1092                       "Intended distribution audience for the associated information. "
1093 mike  1.2             "If 'Proprietary', information contains proprietary information "
1094                       "and is not to be released externally. "
1095                       "If 'Internal', information is for internal use only. "
1096                       "If 'Partner', information is only available to contracted "
1097                       "partners. "
1098                       "If 'Public', information is available to anyone."
1099                   )
1100           	]
1101               uint8 Distribution;
1102           
1103               [
1104                   Description ("Language used in the associated information.")
1105           	]
1106               string Language;
1107           
1108               [
1109                   Description ("Copyright for the associated information.")
1110           	]
1111               string Copyright;
1112           
1113               [
1114 mike  1.2         Description ("Disclaimers about the associated information.")
1115           	]
1116               string Disclaimer;
1117           
1118               [
1119                   Description ("Usage rights for the associated information.")
1120           	]
1121               string Rights;
1122           };
1123           
1124           
1125           // ===================================================================
1126           //    PRS_AdminAssociation
1127           // ===================================================================
1128           
1129           [
1130               Association, 
1131               Description (
1132                   "Associates PRS_Administrative with any object derived from "
1133                   "PRS_ExchangeElement."
1134               )
1135 mike  1.2 ]
1136           class PRS_AdminAssociation : CIM_Dependency
1137           {
1138           
1139               [
1140           	    Min (1),
1141                   Override ("Antecedent"),
1142                   Description ("The PRS_ExchangeElement.")
1143           	]
1144               PRS_ExchangeElement REF Antecedent;
1145           
1146               [
1147                   Override ("Dependent"),
1148                   Description ("The PRS_Administrative.")
1149           	]
1150               PRS_Administrative REF Dependent;
1151           };
1152           
1153           
1154           // ===================================================================
1155           //    PRS_Revision
1156 mike  1.2 // ===================================================================
1157           
1158           [
1159               Description ("PRS_Revision records changes to the content.")
1160           ]
1161           class PRS_Revision : PRS_ExchangeElement
1162           {
1163           
1164               [
1165                   Description ("The date of this revision.")
1166           	]
1167               datetime RevisionDate;
1168           
1169               [
1170                   ValueMap {"0", "1", "2", "254", "255"},
1171                   Values {"Create", "Update", "Delete", "Other", "Unknown"}, 
1172                   Description ("The name of the specific revision being made.")
1173           	]
1174               uint8 ActivityName;
1175           
1176               [
1177 mike  1.2         ValueMap {"0", "1", "2", "254", "255"},
1178                   Values {"Technical", "Editorial", "Administrative", "Other", "Unknown"},
1179                   Description (
1180                       "Type of revision activity. 'Technical' refers to a change "
1181                       "in content. 'Editorial' refers to a change in language or style. "
1182                       "'Administrative' refers to information about the object."
1183                   )
1184           	]
1185               uint8 ActivityType;
1186           
1187               [
1188                   ValueMap {"0", "1", "2", "3", "254", "255"},
1189                   Values {"Open", "Not Reviewed", "Reviewed", "Approved", "Other", "Unknown"},
1190                   Description (
1191                       "The current state of technical review. "
1192                       "'Open' means created but not necessarily completed or resolved. "
1193                       "'Not Reviewed' means contents have to be reviewed for "
1194                       "accuracy and consistency with other content. "
1195                       "'Reviewed' means review has been completed. "
1196                       "'Approved' means formally approval to certify the solution for "
1197                       "the specific status the contents have at this time."
1198 mike  1.2         )
1199           	]
1200               uint8 TechnicalStatus;
1201           
1202               [
1203                   ValueMap {"0", "1", "2", "3", "254", "255"},
1204                   Values {"In_Progress", "Draft", "Reviewed", "Published", "Other", "Unknown"},
1205                   Description (
1206                       "The current state of editorial review. "
1207                       "'In Progress' means the content is in the process of being developed. "
1208                       "'Draft' means the content is complete but unedited. "
1209                       "'Reviewed' means the review has been completed. "
1210                       "'Published' means the contents have been released. "
1211                   )
1212           	]
1213               uint8 EditorialStatus;
1214           
1215               [
1216                   Description ("Text description of what was done in this revision.")
1217           	]
1218               string Description;
1219 mike  1.2 };
1220           
1221           
1222           // ===================================================================
1223           //    PRS_AdministrativeRevision
1224           // ===================================================================
1225           
1226           [
1227               Association, 
1228               Aggregation, 
1229               Description ("Associates PRS_Administrative with PRS_Revision.")
1230           ]
1231           class PRS_AdministrativeRevision : CIM_Dependency
1232           {
1233               [
1234                   Aggregate, 
1235                   Override ("Antecedent"),
1236                   Description ("The PRS_Administrative."),
1237                   Min(1), Max(1)
1238           	]
1239               PRS_Administrative REF Antecedent;
1240 mike  1.2 
1241               [
1242                   Override ("Dependent"),
1243                   Description ("The PRS_Revision.")
1244           	]
1245               PRS_Revision REF Dependent;
1246           };
1247           
1248           
1249           // ===================================================================
1250           // PRS_Contact
1251           // ===================================================================
1252           
1253           [
1254               Description (
1255                   "PRS_Contact is used to anchor associations to PRS_Person and "
1256                   "PRS_Orgnaization.  PRS_Contact is also used to anchor associations "
1257                   "to PRS_Revision and PRS_Resolution as well as the "
1258                   "PRS_ServiceIncident. "
1259               )
1260           ]
1261 mike  1.2 class PRS_Contact : PRS_ExchangeElement
1262           {
1263           };
1264           
1265           
1266           // ===================================================================
1267           //    PRS_ContactItem
1268           // ===================================================================
1269           
1270           [
1271               Abstract,
1272               Description (
1273                   "PRS_ContactItem is the abstract root class for PRS_Person and "
1274                   "PRS_Organization.  It provides a common anchor point for the "
1275                   "PRS_ContactContactItem association. "
1276               )
1277           ]
1278           class PRS_ContactItem : PRS_ExchangeElement
1279           {
1280           };
1281           
1282 mike  1.2 
1283           // ===================================================================
1284           //    PRS_AdministrativeContact
1285           // ===================================================================
1286           
1287           [
1288               Association, 
1289               Aggregation, 
1290               Description ("Associates PRS_Administrative and PRS_Contact")
1291           ]
1292           class PRS_AdministrativeContact : CIM_Dependency
1293           {
1294               [
1295                   Aggregate, 
1296                   Override ("Antecedent"),
1297                   Description ("The PRS_Administrative."),
1298                   Min(1)
1299           	]
1300               PRS_Administrative REF Antecedent;
1301           
1302               [
1303 mike  1.2         Override ("Dependent"),
1304                   Description ("The PRS_Contact."),
1305                   Min(1)
1306           	]
1307               PRS_Contact REF Dependent;
1308           };
1309           
1310           
1311           // ===================================================================
1312           //    PRS_RevisionContact
1313           // ===================================================================
1314           
1315           [
1316               Association,  
1317               Aggregation,
1318               Description ("Associates PRS_Revision and PRS_Contact")
1319           ]
1320           class PRS_RevisionContact : CIM_Dependency
1321           {
1322               [
1323                   Aggregate, 
1324 mike  1.2         Override ("Antecedent"),
1325                   Description ("The PRS_Revision.")
1326           	]
1327               PRS_Revision REF Antecedent;
1328           
1329               [
1330                   Min(1),
1331                   Override ("Dependent"),
1332                   Description ("The PRS_Contact.")
1333           	]
1334               PRS_Contact REF Dependent;
1335           };
1336           
1337           
1338           // ===================================================================
1339           //    PRS_Organization
1340           // ===================================================================
1341           
1342           
1343           [
1344               Description (
1345 mike  1.2         "PRS_Organization describes a PRS_Contact's organization name "
1346                   "and business."
1347               )
1348           ]
1349           class PRS_Organization : PRS_ContactItem
1350           {
1351               [
1352                   Description ("The name of the organization.")
1353           	]
1354               string Name;
1355           
1356               [
1357                   Description ("Description of organization's primary business.")
1358           	]
1359               string Business;
1360           };
1361           
1362           
1363           // ===================================================================
1364           //    PRS_Person
1365           // ===================================================================
1366 mike  1.2 
1367           [
1368               Description ("Information about a personal contact.")
1369           ]
1370           class PRS_Person : PRS_ContactItem
1371           {
1372               [
1373                   Description ("Contact's first name.")
1374           	]
1375               string FirstName;
1376           
1377               [
1378                   Description ("Contact's last name.")
1379           	]
1380               string LastName;
1381               
1382               [
1383                   Description ("How the contact is addressed, i.e. Dr., Mr., Ms., Mrs., etc.")
1384           	]
1385               string Salutation;
1386           
1387 mike  1.2     [
1388                   Description ("Contact's business title.")
1389               ]
1390               string Title;
1391           
1392               [   Description (
1393                       "Description of the contact.  For example, they may have responsibilities "
1394                       "not apparent from their title."
1395                   )
1396           	]
1397               string ContactType;
1398           
1399               [
1400                   ValueMap {"0", "1", "2", "3", "4", "254", "255"}, 
1401                   Values {"Primary_Voice", "Alternate_Voice", "Fax", "Email", "URL", "Other", 
1402                       "Unknown"}, 
1403                   Description(
1404                       "Contact's preferred communication method.  See the PRS_Location "
1405                       "Type property."
1406                   )
1407           	]
1408 mike  1.2     uint8 CommunicationMode;
1409           };
1410           
1411           
1412           // ===================================================================
1413           //    PRS_ContactContactItem
1414           // ===================================================================
1415           
1416           [
1417               Association, 
1418               Abstract, 
1419           	Description (
1420                   "Abstract root class to associate PRS_Person or PRS_Organization "
1421                   "and PRS_Contact."
1422               )
1423           ]
1424           class PRS_ContactContactItem : CIM_Dependency
1425           {
1426           
1427               [
1428           	    Min (1),
1429 mike  1.2         Override ("Antecedent"),
1430                   Description ("The PRS_Contact.")
1431               ]
1432               PRS_Contact REF Antecedent;
1433           
1434               [
1435                   Min (1),
1436                   Override ("Dependent"),
1437                   Description (
1438                       "The PRS_ContactItem, either PRS_Person or PRS_Organization. "
1439                       "There is always at least one PRS_ContactItem, however it may be "
1440                       "either a PRS_Person or PRS_Organization.  For that reason, there "
1441                       "is a minimum cardinality of one for this property, but a minimum "
1442                       "cardinality of zero in the classes derived from this class."
1443                   )
1444               ]
1445              PRS_ContactItem REF Dependent;
1446           };
1447           
1448           
1449           // ===================================================================
1450 mike  1.2 //    PRS_ContactOrganization
1451           // ===================================================================
1452           
1453           [
1454               Association,
1455               Description ("Associates PRS_Contact and PRS_Organization")
1456           ]
1457           class PRS_ContactOrganization : PRS_ContactContactItem
1458           {
1459               [
1460                   Min(0),
1461                   Override ("Dependent"), 
1462                   Description ("The PRS_Organization.")
1463           	]
1464               PRS_Organization REF Dependent;
1465           };
1466           
1467           
1468           // ===================================================================
1469           //    PRS_ContactPerson
1470           // ===================================================================
1471 mike  1.2 
1472           [
1473               Association,
1474               Description ("Associates PRS_Contact and PRS_Person")
1475           ]
1476           class PRS_ContactPerson : PRS_ContactContactItem
1477           {
1478               [
1479                   Min(0),
1480                   Override ("Dependent"), 
1481                   Description ("The PRS_Person.")
1482           	]
1483               PRS_Person REF Dependent;
1484           };
1485           
1486           
1487           // ===================================================================
1488           //    PRS_Address
1489           // ===================================================================
1490           
1491           [
1492 mike  1.2     Description ("Provides address information for PRS_ContactItem")
1493           ]
1494           class PRS_Address : PRS_ExchangeElement
1495           {
1496               [
1497                   ValueMap {"0", "1", "2", "3", "254", "255"}, 
1498                   Values {"Primary", "Shipping", "Billing", "Service", "Other", "Unknown"},
1499                   Description ("The type of address.")
1500           	]
1501               uint8 AddressType;
1502           
1503               [
1504                   Description ("First line of address information.")
1505           	]
1506               string Address1;
1507           
1508               [
1509                   Description ("Second line of address information.")
1510           	]
1511               string Address2;
1512           
1513 mike  1.2     [
1514                   Description ("Third line of address information.")
1515           	]
1516               string Address3;
1517           
1518               [
1519                   Description ("Fourth line of address information.")
1520           	]
1521               string Address4;
1522           
1523               [
1524                   Description ("The city.")
1525           	]
1526               string City;
1527           
1528               [
1529                   Description ("The specific region, such as state or province.")
1530           	]
1531               string Region;
1532           
1533               [
1534 mike  1.2         Description ("The country's postal code for the address")
1535           	]
1536               string PostalCode;
1537           
1538               [
1539                   Description ("The time zone of the address.")
1540           	]
1541               string TimeZone;
1542           
1543               [
1544                   Description ("The country code, based on ISO/IEC 3166.")
1545           	]
1546               string Country;
1547           };
1548           
1549           
1550           // ===================================================================
1551           //    PRS_ContactItemAddress
1552           // ===================================================================
1553           
1554           [
1555 mike  1.2     Association, 
1556               Description ("Associates PRS_ContactItem with PRS_Address.")
1557           ]
1558           class PRS_ContactItemAddress : CIM_Dependency
1559           {
1560           
1561               [   
1562                   Min(1),
1563                   Override ("Antecedent"),
1564                   Description ("The PRS_ContactItem.")
1565               ]
1566               PRS_ContactItem REF Antecedent;
1567           
1568               [
1569                   Override ("Dependent"),
1570                   Description ("The PRS_Address.")
1571           	]
1572               PRS_Address REF Dependent;
1573           };
1574           
1575           
1576 mike  1.2 // ===================================================================
1577           //    PRS_Location
1578           // ===================================================================
1579           
1580           [
1581               Description ("PRS_Location describes the location of a a PRS_Address.")
1582           ]
1583           class PRS_Location : PRS_ExchangeElement
1584           {
1585           
1586               [
1587                   ValueMap {"0", "1", "2", "3", "4", "254", "255"}, 
1588                   Values {"Primary_Voice", "Alternate_Voice", "Fax", "Email", "URL", "Other", 
1589                       "Unknown"},
1590                   Description ("The type of location.")
1591           	]
1592               uint8 LocationType;
1593           
1594               [
1595                   Description ("The specific location.")
1596           	]
1597 mike  1.2     string LocationID;
1598           };
1599           
1600           
1601           // ===================================================================
1602           //    PRS_Address Location
1603           // ===================================================================
1604           
1605           [
1606               Association, 
1607               Description ("Associates PRS_Address and PRS_Location.")
1608           ]
1609           class PRS_AddressLocation : CIM_Dependency
1610           {
1611               [
1612                   Override ("Antecedent"),        
1613                   Min(1),
1614                   Description ("The PRS_Address.")
1615           
1616           	]
1617               PRS_Address REF Antecedent;
1618 mike  1.2 
1619               [
1620                   Override ("Dependent"),
1621                   Description ("The PRS_Location")
1622           	]
1623               PRS_Location REF Dependent;
1624           };
1625           
1626           
1627           // ===================================================================
1628           //    PRS_Attachment
1629           // ===================================================================
1630           
1631           [
1632               Description (
1633                   "PRS_Attachment describes file attachments. A PRS_Attachment may be "
1634                   "associated to any object derived from PRS_ExchangeElement. "
1635                   "PRS_Attachment is used to attach objects of any type including binary " 
1636                   "files, ASCII documents, or URLs. "
1637                   "Only one object may be attached per PRS_Attachment. \n"
1638                   "/n"
1639 mike  1.2         "The actual attachment carried by the Attachment object is included "
1640                   "in one of two methods: by reference or by value as an embedded object. "
1641                   "A by reference method links indirectly to the attachment through the use of "
1642                   "a string identifier, e.g. a file name. An embedded object method "
1643                   "means the actual binary data is included in PRS_Attachment."
1644               )
1645           ]
1646           class PRS_Attachment : PRS_ExchangeElement
1647           {
1648               [
1649                   Description (
1650                       "If the attachment is not embedded, where the attachment "
1651                       "is located."
1652                   )
1653           	]
1654               string AttachmentReference;
1655           
1656               [
1657                   Description ("Protocol required to read the attachment (e.g., http).")
1658           	]
1659               string Protocol;
1660 mike  1.2 
1661               [
1662                   Description ("The file format of the attachment.")
1663           	]
1664               string Format;
1665           
1666               [
1667                   Description ("The size of the attachment in bytes.")
1668           	]
1669               string AttachmentSize;
1670           
1671               [
1672                   Description ("The attachment itself, if embedded.")
1673           	]
1674               string AttachmentObject;
1675           
1676               [
1677                   ValueMap {"0", "1", "2", "254", "255"},
1678                   Values {"Instructions", "Background", "Log", "Unknown", "Undefined"}, 
1679                   Description (
1680                       "The purpose of the attachment, related to the diagnosis. "
1681 mike  1.2             "'Instructions' are compilable code. "
1682                       "'Background' are descriptive information. "
1683                       "'Log' is information captured in a log file. "
1684                   )
1685           	]
1686               uint8 AttachmentType;
1687           
1688               [
1689                   Description (
1690                       "The displayable attachment identifier. Used to define what will "
1691                       "appear as the name of the attachment, as opposed to the specific "
1692                       "attachment file name or URL. "
1693                   )
1694           	]
1695               string AttachmentName;
1696           };
1697           
1698           
1699           // ===================================================================
1700           //    PRS_Attached
1701           // ===================================================================
1702 mike  1.2 
1703           [
1704               Association, 
1705               Description ("Associates PRS_Attachment with PRS_ExchangeElement.")
1706           ]
1707           class PRS_Attached : CIM_Dependency
1708           {
1709               [
1710                   Override ("Antecedent"),        
1711                   Description ("The PRS_Attachment.")
1712           	]
1713               PRS_Attachment REF Antecedent;
1714           
1715               [
1716                   Override ("Dependent"),        
1717                   Min(1),
1718                   Description ("The PRS_ExchangeElement.")
1719               ]
1720               PRS_ExchangeElement REF Dependent;
1721           };
1722           
1723 mike  1.2 
1724           // ===================================================================
1725           // ===================================================================
1726           //    Service Incident Exchange information
1727           // ===================================================================
1728           // ===================================================================
1729           
1730           // ===================================================================
1731           //    ServiceIncident
1732           // ===================================================================
1733           
1734           [
1735               Description (
1736                   "PRS_ServiceIncident contains the fundamental information related to "
1737                   "a specific incident : its identity, status, priority, etc. "
1738                   "The actual incident data, including specific transactions and "
1739                   "resolution information, is contained in the objects associated "
1740                   "with PRS_ServiceIncident.  These include specific Problem, "
1741                   "Resolution and Activity related objects accrued through the "
1742                   "Transaction workflow."
1743               )
1744 mike  1.2 ]
1745           class PRS_ServiceIncident : PRS_ExchangeElement
1746           {
1747           
1748               [
1749                   Description (
1750           	        "The unique identifier for this incident assigned by the Requester"
1751                   )
1752               ]
1753               string RequesterID;
1754           	
1755               [
1756                   Description (
1757           	        "The unique identifier for this incident assigned by the Provider")
1758           	]
1759               string ProviderID;
1760           
1761           	[
1762                   ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "254", "255"}, 
1763                   Values {
1764                       "Beginning_State", "Not_Entitled", "Entitled", 
1765 mike  1.2             "Problem_Submitted", "Open_Requester", "Open_Provider",
1766                       "Closed_Pending_Confirmation", "Closed", "Other", "Unknown"
1767                   },
1768           	    Description (
1769                       "The state of the incident within the Service Incident Exchange "
1770                       "Standard transaction model."
1771                   )
1772           	]
1773               uint8 CurrentState;
1774           
1775               [
1776                   Values {"1", "2", "3", "4", "5"}, 
1777                   Description (
1778                       "The severity of the incident as defined by the Requester. "
1779                       "One is the most severe and five is the least severe. "
1780                   )
1781           	]
1782               uint8 RequesterSeverity;
1783           
1784           	[
1785                   Values {"1", "2", "3", "4", "5"}, 
1786 mike  1.2         Description (
1787                       "The priority of the incident as defined by the Requester. "
1788                       "One is the highest priority and five is the lowest priority."
1789                   )
1790           	]
1791               uint8 ProviderPriority;
1792           
1793               [
1794                   Description (
1795           	        "The explicit time the Requester expects a response. "
1796                   )
1797           	]
1798               datetime ResponseTime;
1799           
1800               [
1801                   Description (
1802           	        "Status of the incident according to the workflow"
1803                   )
1804           	]
1805               string WorkflowStatus;
1806           
1807 mike  1.2     [
1808                   Description (
1809           	        "Additional general information about the incident"
1810                   )
1811               ]
1812               string Comment;
1813           
1814               [
1815                   ValueMap {"0", "1", "254", "255"},
1816                   Values {"Yes", "No", "Other", "Unknown"}, 
1817                   Description (
1818           	        "Is the Requester entitled to service or not? "
1819                   )
1820           	]
1821               uint8 Entitled;
1822           
1823               [
1824                   ValueMap {"0", "1", "254", "255"},
1825                   Values {"Yes", "No", "Other", "Unknown"}, 
1826                   Description (
1827           	        "Was the last transaction was accepted or rejected? "
1828 mike  1.2         )
1829           	]
1830               uint8 Acknowledge;
1831           
1832               [
1833                   Description(
1834                       "The use of the TransactionName property is deprecated.  New Service "
1835                       "Incidents should use the LastTransaction property and set this "
1836                       "property to NULL. "
1837                   ),
1838           
1839                   Deprecated {
1840                       "PRS_ServiceIncident.LastTransaction"
1841                   }	
1842               ]
1843               string TransactionName;
1844               [
1845                   ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "254",
1846                       "255"}, 
1847                   Values {
1848                       "Service_Request", "Entitlement", "Problem_Submittal", 
1849 mike  1.2             "Accept_Problem", "Problem_Resolution", "Request_Problem_Information", 
1850                       "Provide_Problem_Information", "Provide_Admin_Information", 
1851                       "Query_Incident", "Confirm_Close", "Reject_Resolution", "Request_Closure", 
1852                       "Other", "Unknown"}, 
1853                   Description(
1854           	        "The name of the last transaction which was acknowledged."
1855                   )
1856           	]
1857               uint8 LastTransaction;
1858           
1859           };
1860           
1861           
1862           // ===================================================================
1863           //    PRS_Service Requester   
1864           // ===================================================================
1865           
1866           [
1867               Association, 
1868               Description (
1869                   "PRS_ServiceRequester associates a PRS_Service Incident with "
1870 mike  1.2         "a PRS_Contact representing the entity requesting service. "
1871                   "Note that the Contact class is used for both Requesters and "
1872                   "Providers, the context is determined by which association exists. "
1873               )
1874           ]
1875           class PRS_ServiceRequester : CIM_Dependency
1876           {
1877               [
1878                   Override("Antecedent"),
1879                   Description ("The PRS_ServiceIncident.")
1880               ]
1881               PRS_ServiceIncident REF Antecedent;
1882           
1883               [
1884                   Min (1), Max (1),
1885                   Override("Dependent"),
1886                   Description ("The PRS_Contact")
1887               ]
1888               PRS_Contact REF Dependent;
1889           };
1890           
1891 mike  1.2 
1892           // ===================================================================
1893           //    PRS_ServiceProvider   
1894           // ===================================================================
1895           
1896           [
1897               Association, 
1898               Description (
1899                   "Associates PRS_ServiceIncident to PRS_Contact to describe the "
1900                   "Service Provider. "
1901               )
1902           ]
1903           class PRS_ServiceProvider : CIM_Dependency
1904           {
1905           
1906               [
1907                   Override("Antecedent"),
1908                   Description ("The PRS_ServiceIncident.")
1909           	]
1910               PRS_ServiceIncident REF Antecedent;
1911           
1912 mike  1.2     [
1913                   Min (1), Max (1),
1914                   Override("Dependent"),
1915                   Description ("The PRS_Contact.")
1916           	]
1917               PRS_Contact REF Dependent;
1918           };
1919           
1920           
1921           // ===================================================================
1922           //    PRS_ServiceProblem
1923           // ===================================================================
1924           
1925           [
1926               Association, 
1927               Description (
1928                   "Associates PRS_ServiceIncident to PRS_Problem to describe the "
1929                   "Problem being submitted to the Service Provider."
1930               )
1931           ]
1932           class PRS_ServiceProblem : CIM_Dependency
1933 mike  1.2 {
1934               [
1935                   Min (1),
1936                   Override("Antecedent"),
1937                   Description ("The PRS_ServiceIncident.")
1938           	]
1939               PRS_ServiceIncident REF Antecedent;
1940           
1941               [
1942                   Max (1),
1943                   Override("Dependent"),
1944                   Description ("The PRS_Problem.")
1945           	]
1946               PRS_Problem REF Dependent;
1947           };
1948           
1949           
1950           // ===================================================================
1951           //    PRS_ServiceResolutionSolution
1952           // ===================================================================
1953           
1954 mike  1.2 [
1955               Association,  
1956               Aggregation,
1957               Description (
1958                    "Associates PRS_ServiceIncident to PRS_Solution to describe the "
1959                    "Resolutions proposed by the Service Provider. "
1960               )
1961           ]
1962           class PRS_ServiceResolutionSolution : CIM_Dependency
1963           {
1964           
1965               [
1966                   Aggregate, 
1967                   Override("Antecedent"),
1968                   Description ("The PRS_ServiceIncident.")
1969           	]
1970               PRS_ServiceIncident REF Antecedent;
1971           
1972               [
1973                   Override("Dependent"),
1974                   Description (
1975 mike  1.2             "The PRS_Solution.  PRS_Solution must be associated with at least "
1976                       "one Resolution. "
1977                   )
1978               ]
1979               PRS_Solution REF Dependent;
1980           };
1981           
1982           
1983           // ===================================================================
1984           //    PRS_Agreement 
1985           // ===================================================================
1986           
1987           [
1988               Description (
1989                    "The agreement or contract referenced for entitlement to service."
1990               )
1991           ]
1992           class PRS_Agreement : PRS_ExchangeElement
1993           {
1994           
1995               [
1996 mike  1.2         Description (
1997                       "The identifier for the contract between the Request and "
1998                       "the Provider. This property is set by the Requester "
1999                       "prior to submitting a Service Request. "
2000                   ) 
2001               ]
2002               string ContractID;
2003           
2004               [
2005                   Description (
2006                       "A brief description of the contract."
2007                   )
2008           	]
2009               string AgreementType;
2010           };
2011           
2012           
2013           // ===================================================================
2014           //    PRS_ServiceAgreement 
2015           // ===================================================================
2016           
2017 mike  1.2 [
2018               Association, 
2019               Description ("Associates PRS_ServiceIncident to PRS_Agreement. ")
2020           ]
2021           class PRS_ServiceAgreement : CIM_Dependency
2022           {
2023           
2024               [
2025                   Override("Antecedent"),
2026                   Description ("The PRS_ServiceIncident.")
2027               ]
2028               PRS_ServiceIncident REF Antecedent;
2029           
2030               [
2031                   Min (1), Max (1),
2032                   Override("Dependent"),
2033                   Description ("The PRS_Agreement.")
2034               ]
2035               PRS_Agreement REF Dependent;
2036           };
2037           
2038 mike  1.2 
2039           // ===================================================================
2040           //    PRS_Activity
2041           // ===================================================================
2042           
2043           [
2044               Description (
2045                   "Describes the date of each transaction and the objects involved. "
2046               )
2047           ]
2048           class PRS_Activity : PRS_ExchangeElement
2049           {
2050           
2051               [
2052                   Description (
2053                       "The key fields for the objects in the associated Transaction. "
2054                       "The use of this property is deprecated.  The PRS_SISService "
2055                       "StartSISTransaction method uses the New, Modified and Deleted "
2056                       "properties instead of this field.  This field is set to NULL "
2057                       "by the StartSISTransaction method if the other properties are "
2058                       "used. "
2059 mike  1.2         ),
2060               
2061                   Deprecated {
2062                       "PRS_Activity.NewKeys",
2063           		"PRS_Activity.Deleted",
2064           		"PRS_Activity.Modified"
2065                   }
2066           	]
2067               string ParameterList;
2068           
2069               [
2070                   Description (
2071                       "The key fields for the objects added in the associated Transaction. "
2072                       "This property is set by the PRS_SISService StartSISTransaction method."
2073                   )	
2074               ]
2075               string NewKeys;
2076           
2077               [
2078                   Description (
2079                       "The key fields for objects deleted in the associated Transaction. "
2080 mike  1.2             "This property is set by the PRS_SISService StartSISTransaction method."
2081                   )
2082               ]
2083               string Deleted;
2084           
2085               [
2086                   Description (
2087                       "The key fields for objects modified in the associated Transaction. "
2088                       "This property is set by the PRS_SISService StartSISTransaction method."
2089                   )
2090               ]
2091               string Modified;
2092           
2093               [
2094                   Description (
2095                       "The date of the Activity.  This property is set by the PRS_SISService "
2096                       "StartSISTranasaction method. "
2097                   )
2098           	]
2099               datetime LocalDate;
2100           
2101 mike  1.2     [
2102                   Description ("Description of the activity performed. ")
2103               ]
2104               string ActionLog;
2105           };
2106           
2107           
2108           // ===================================================================
2109           //    PRS_Transaction
2110           // ===================================================================
2111           
2112           [
2113               Description (
2114                   "PRS_Transaction represents a single transaction of the Service "
2115                   "Incident workflow.  A PRS_Transaction instance is created by the "
2116                   "PRS_SISService StartTransaction method. "
2117               )
2118           ]
2119           class PRS_Transaction : PRS_ExchangeElement
2120           {
2121               [
2122 mike  1.2 	    ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "254",
2123                         "255"},
2124                   Values {
2125                       "Service_Request", "Entitlement", "Problem_Submittal", 
2126                       "Accept_Problem", "Problem_Resolution", "Request_Problem_Information", 
2127                       "Provide_Problem_Information", "Provide_Admin_Information", 
2128                       "Query_Incident", "Confirm_Close", "Reject_Resolution", "Request_Closure", 
2129                       "Other", "Unknown"
2130                   }, 
2131                   Description (
2132                       "The specific SIS transaction represented by this PRS_Transaction instance. "
2133           	    )
2134               ]
2135               uint8 TransactionType;
2136           
2137               [
2138           	    ValueMap {"0", "1", "2", "3"},
2139           	    Values {"Open", "Working", "Closed", "Notification_Pending"}, 
2140                   Description (
2141                       "The current state of this transaction.  This value is manipulated "
2142                       "by the PRS_SISService:StartSISTransaction and SetSISTransactionComplete "
2143 mike  1.2             "method implementations.  This property is not intended to be written "
2144                       "by management applications."
2145                   )
2146               ]
2147               uint8 TransactionState;
2148           
2149               [
2150           	    Description (
2151                       "The status of the transaction after it has reached the 'Closed' "
2152                       "state.  A CompletionStatus of zero (0) means the tranasaction "
2153                       "completed successfully.  A non-zero CompletionStatus indicates the "
2154                       "transaction did not complete successfully.  Non-zero values are "
2155                       "implementation-specific.  While the transaction is 'Open' or "
2156                       "'Working' the CompletionStatus property shall be zero (0). "
2157                       "See the description for PRS_SISService "
2158                       "for the definition of the contents of this property. "
2159                   )
2160               ]
2161               uint32 CompletionStatus;
2162           };
2163           
2164 mike  1.2 
2165           // ===================================================================
2166           //    PRS_SISService
2167           // ===================================================================
2168           
2169           [
2170               Description (
2171                   "The PRS_SISService is used as a class factory for PRS_Transactions."
2172               )
2173           ]
2174           class PRS_SISService : CIM_Service
2175           {
2176               [
2177                   Description (
2178                       "When invoked on a local system, this method validates the objects "
2179                       "in the local repository are sufficient for the indicated "
2180                       "TransactionType.  If not, an error is returned and no additional "
2181                       "processing is performed.  If the repository is successfully "
2182                       "validated, this method creates a PRS_Transaction instance for "
2183                       "return to the caller.\n"
2184                       "\n"
2185 mike  1.2             "This method also reviews the repository looking for new, modified "
2186                       "or deleted objects.  As these objects are located, the keys for "
2187                       "these objects are appended to the related strings in the PRS_Activity "
2188                       "instance specified by a parameter to this method.\n"
2189                       "\n"
2190                       "After all the appropriate new, modified or deleted objects have "
2191                       "been located, this method invokes the PRS_SISService StartSISTransaction "
2192                       "method on the remote system specified by the objects related to the "
2193                       "Service Incident associated with the PRS_Activity instance specified "
2194                       "as a method parameter.  The TransactionType and PRS_Activity REF "
2195                       "is forward to the remote system as method parameters as well as the "
2196                       "PRS_Transaction REF for the instance created by this method.\n"
2197                       "\n"
2198                       "The remote system creates a child namespace using the PRS_Transaction REF "
2199                       "for the name.  The local system than transfers all of the New, Modified "
2200                       "and Deleted objects to namespace on the remote system.  Once all objects "
2201                       "have been successfully transferred, the PRS_SISService EndSISTransaction "
2202                       "method is invoked on the remote system with a Status value of zero to "
2203                       "indicate the remote system should attempt to commit the transaction to "
2204                       "the remote repository./n"
2205                       "/n"
2206 mike  1.2             "The remote system passes the results of the remote commit back to the "
2207                       "originating system by invoking the PRS_SISService SetSISTransactionComplete "
2208                       "method on the system that originated the SIS transaction.  The "
2209                       "CompletionStatus method parameter indicates whether the remote commit was "
2210                       "successful.  If the CompletionStatis is zero, the remote commit was "
2211                       "successfult.  If it was unsuccessful, the objects were not applied to the "
2212                       "remote repository and the CompletionStatus is not zero indicating the error. "
2213                       "The local invocation of the SetSISTransactionComplete method updates the "
2214                       "specified PRS_Transaction's State to Closed and the Status to the valid "
2215                       "provided by the remote system as the CompletionStatus method parameter.\n"
2216                       "\n"
2217                       "In order to promote extensibility, the uint32 values used for return codes "
2218                       "method CompletionStatus parameters are mapped into three "
2219                       "significant sections.  The first describes the type of value being reported. "
2220                       "These include Error versus Notification and Standard versus "
2221                       "Vendor-specific.\n"
2222                       "\n"
2223                       "The second section describes the source of the value.  These include Method, "
2224                       "Operating System, Repository, or Transport.  In addition, this section "
2225                       "indicates whether the value was created locally or remotely.\n"
2226                       "\n"
2227 mike  1.2             "The third section is the specific return value.\n"
2228                       "\n"
2229                       "If all 32 bits of the return value are reset, the method completed "
2230                       "successfully.  Any other value indicates an error condition or notification. "
2231                       "If D31 is set, the method did not complete successfully.  If D31 is reset, "
2232                       "but the rest of the return value is non-zero, this is a Notification that "
2233                       "the operation did complete successfully, but the source of the value feels "
2234                       "there is a condition that caller needs to be aware exists.\n"
2235                       "\n"
2236                       "If D30 is set, the return value is vendor specific.  If D30 is reset, the "
2237                       "return value is defined by the standard.\n"
2238                       "\n"
2239                       "If D29 is set, the return value was generated by a remote system.  If D29 is "
2240                       "reset, the return value was generated locally.  The bit is always set or "
2241                       "reset by the local system.  The local system sets the bit if it receives a "
2242                       "non-zero return value from a remote method invocation.\n"
2243                       "\n"
2244                       "Bit D28 is reserved for future and shall be reset on all return values.\n"
2245                       "\n"
2246                       "When there is an error or notification, D24 through D27 indicate the source "
2247                       "of the error.  The following sources are currently defined (D24 is the least "
2248 mike  1.2             "significant bit below):\n"
2249                       "\n"
2250           	        "   0000    Method\n"
2251                       "   0001    Operating System\n"
2252                       "   0010    Repository\n"
2253                       "   0011    Transport\n"
2254                       "           All remaining values are reserved.\n"
2255                       "\n"
2256                       "Bits D16 through D23 are reserved for future use and shall be reset to "
2257                       "zero.\n"
2258                       "\n"
2259                       "Bits D0 through D15 indicate the specific return value.  If zero, all other "
2260                       "bits in the return value must be zero, indicating successful completion of "
2261                       "the method (or Transaction). "
2262                   )
2263               ]
2264               uint32 StartSISTransaction (
2265           	    [
2266           	        ValueMap {
2267                           "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", 
2268                           "254", "255"
2269 mike  1.2             },
2270                       Values {
2271                           "Service_Request", "Entitlement", "Problem_Submittal", 
2272                           "Accept_Problem", "Problem_Resolution", "Request_Problem_Information", 
2273                           "Provide_Problem_Information", "Provide_Admin_Information", 
2274                           "Query_Incident", "Confirm_Close", "Reject_Resolution", "Request_Closure", 
2275                           "Other", "Unknown"
2276                       }, 
2277           	        IN
2278           	    ] 
2279                   uint8 TransactionType,
2280           
2281           	    [IN] PRS_Activity REF ActivityRef,
2282           
2283                   [IN, OUT] PRS_Transaction REF TransactionRef
2284               );
2285               [
2286                   Description(
2287                       "The EndSISTransaction method is used to handle committing or aborting "
2288                       "a transaction.  For commit, the method is invoked by a remote system "
2289                       "when all of the objects associated to the transaction have been "
2290 mike  1.2             "placed in the child namespace created by StartSISTransaction.\n"
2291                       "\n"
2292                       "For abort, the method cleans up the child namespace and closes the "
2293                       "specified PRS_Transaction, setting the CompletionStatus to the method "
2294                       "parameter of the same name. "
2295                   )
2296               ]
2297               uint32 EndSISTransaction (
2298                   [
2299                       IN,
2300                       Description(
2301                           "Status indicates whether the transaction is to "
2302                           "be committed or aborted.  If Status is zero, the transaction is "
2303                           "to be committed.  If Status is non-zero, it indicates the "
2304                           "transaction is to be aborted.  If the transaction is being "
2305                           "aborted, the Status field is passed back to the originating system "
2306                           "as the CompletionStatus parameter for the PRS_SISService "
2307                           "SetSISTransactionComplete method.  See the description for "
2308                           "PRS_SISService "
2309                           "for the definition of the contents of this property. "
2310                       )   
2311 mike  1.2         ]
2312                   uint32 Status,
2313                   [
2314                       IN,
2315                       Description(
2316                           "TransactionRef identifies the PRS_Transaction to commit or abort. "
2317                           "If this property is NULL or does not identify an 'Open' transaction, "
2318                           "this method returns an error. "
2319                       )
2320                   ]
2321                   PRS_Transaction REF TransactionRef
2322               );
2323               [
2324                   Description(
2325                       "SetSISCompletionStatus is used to signal the system that originated an "
2326                       "SIS transaction that the remote system has completed processing of the "
2327                       "transaction.  If the processing was successful, as indicated by the "
2328                       "CompletionStatus method parameter, the local system resets the DirtyFlag "
2329                       "for all of the objects identified in the PRS_Activity instance associated "
2330                       "to the PRS_Transaction specified. "
2331                   )
2332 mike  1.2     ]
2333               uint32 SetSISCompletionStatus (        [
2334                       IN,
2335                       Description(
2336                           "CompletionStatus is used to set the CompletionStatus field of the "
2337                           "specified PRS_Transaction.  If zero, the SIS transaction was "
2338                           "completed successfully.  If non-zero, an error occurred and the "
2339                           "objects provided by StartSISTransaction were not submitted to the "
2340                           "remote repository.  See the description for PRS_SISService "
2341                           "for the definition of the contents of this property. "
2342                       )
2343                   ]
2344                   uint32 CompletionStatus,
2345                   [
2346                       IN,
2347                       Description(
2348                           "TransactionRef identifies the PRS_Transaction that has completed. "
2349                           "If this property is NULL or does not identify an 'Open' transaction, "
2350                           "this method returns an error. "
2351                       )
2352                   ]
2353 mike  1.2         PRS_Transaction REF TransactionRef
2354               );
2355           };
2356           
2357           
2358           // ===================================================================
2359           //    PRS_Service Activity 
2360           // ===================================================================
2361           
2362           [
2363               Association, 
2364               Aggregation, 
2365               Description ("Associates PRS_ServiceIncident to PRS_Activity.")
2366           ]
2367           class PRS_ServiceActivity : CIM_Dependency
2368           {
2369           
2370               [
2371                   Aggregate,
2372                   Min(1), Max (1),
2373                   Override("Antecedent"),
2374 mike  1.2         Description ("The PRS_ServiceIncident.")
2375           	]
2376               PRS_ServiceIncident REF Antecedent;
2377           
2378               [
2379                    Override("Dependent"),
2380                    Description ("The PRS_Activity.")
2381               ]
2382               PRS_Activity REF Dependent;
2383           };
2384           
2385           
2386           // ===================================================================
2387           //    PRS_ActivityContact
2388           // ===================================================================
2389           
2390           [
2391               Association, 
2392               Description ("Associates PRS_Activity with PRS_Contact.")
2393           ]
2394           class PRS_ActivityContact : CIM_Dependency
2395 mike  1.2 {
2396           
2397               [   
2398                   Override("Antecedent"),
2399                   Description ("The PRS_Activity.")
2400           	]
2401               PRS_Activity REF Antecedent;
2402           
2403               [
2404                   Max (1),
2405                   Override("Dependent"),
2406                   Description ("The PRS_Contact.")
2407               ]
2408               PRS_Contact REF Dependent;
2409           };
2410           
2411           
2412           // ===================================================================
2413           //    PRS_Activity Resource
2414           // ===================================================================
2415           
2416 mike  1.2 [
2417               Association, 
2418               Aggregation, 
2419               Description ("Associates PRS_Activity with PRS_Resource")
2420           ]
2421           class PRS_ActivityResource : CIM_Dependency
2422           {
2423           
2424               [
2425                   Aggregate, 
2426                   Min (1), Max (1),
2427                   Override("Antecedent"),
2428                   Description ("The PRS_Activity.")
2429               ]
2430               PRS_Activity REF Antecedent;
2431           
2432               [
2433                   Override("Dependent"),
2434                   Description ("The PRS_Resource.")
2435               ]
2436               PRS_Resource REF Dependent;
2437 mike  1.2 };
2438           
2439           
2440           // ===================================================================
2441           // Activity Transaction
2442           // ===================================================================
2443           
2444           [
2445               Association, 
2446               Description ("Associates PRS_Activity with PRS_Transaction.")
2447           ]
2448           class PRS_ActivityTransaction : CIM_Dependency
2449           {
2450               [
2451                   Min (1), Max (1),
2452                   Override("Antecedent"),
2453                   Description ("The PRS_Activity.")
2454               ]
2455               PRS_Activity REF Antecedent;
2456           
2457               [
2458 mike  1.2         Min (1), Max (1),
2459                   Override("Dependent"),
2460               	Description ("The PRS_Transaction.")
2461               ]
2462               PRS_Transaction REF Dependent;
2463           };
2464           
2465           
2466           // ===================================================================
2467           // end of file
2468           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2