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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2