<?xml version="1.0" encoding="UTF-8"?>
<!-- 
DMTF - Distributed Management Task Force, Inc. - http://www.dmtf.org

Document number: DSP8019
Date: 2011-04-07
Version: 1.2.0
Document status: DMTF Standard

Title: WS-Management CIM Binding XML Schema

Document type: Specification (W3C XML Schema)
Document language: E

Abstract: XML schema for WS-Management CIM binding.

Contact group: DMTF WS-Management Work Group, wsman-chair@dmtf.org

Copyright (C) 2008,2009,2010,2011 Distributed Management Task Force, Inc. (DMTF).  All rights reserved.
DMTF is a not-for-profit association of industry members dedicated to promoting enterprise and
systems management and interoperability.  Members and non-members may reproduce DMTF specifications
and documents provided that correct attribution is given.  As
DMTF specifications may be revised from time to time, the particular version and release date should
always be noted.  Implementation of certain elements of this standard or proposed standard may be
subject to third party patent rights, including provisional patent rights (herein "patent rights").
DMTF makes no representations to users of the standard as to the existence of such rights, and is
not responsible to recognize, disclose, or identify any or all such third party patent right, owners
or claimants, nor for any incomplete or inaccurate identification or disclosure of such rights,
owners or claimants.  DMTF shall have no liability to any party, in any manner or circumstance,
under any legal theory whatsoever, for failure to recognize, disclose, or identify any such third
party patent rights, or for such party's reliance on the standard or incorporation thereof in its
product, protocols or testing procedures.  DMTF shall have no liability to any party implementing
such standard, whether such implementation is foreseeable or not, nor to any patent owner or
claimant, and shall have no liability or responsibility for costs or losses incurred if a standard
is withdrawn or modified after publication, and shall be indemnified and held harmless by any party
implementing the standard from any and all claims of infringement by a patent owner for such
implementations.  For information about patents held by third-parties which have notified the DMTF
that, in their opinion, such patent may relate to or impact implementations of DMTF standards, visit
http://www.dmtf.org/about/policies/disclosures.php.

Change log:
1.1.0 - 2009-11-01 - Work in progress release
1.1.0 - 2010-02-19 - DMTF Standard release
1.2.0 - 2011-03-28 - Add new advertising elements for metadata path formats.  
  -->
<xs:schema targetNamespace="http://schemas.dmtf.org/wbem/wsman/1/cimbinding.xsd" 
    xmlns:wsmb="http://schemas.dmtf.org/wbem/wsman/1/cimbinding.xsd" 
    xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    elementFormDefault="qualified" 
   >

  <xs:import namespace="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"
             schemaLocation="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"/>

  <xs:complexType name="AssociatedInstancesType">
    <xs:sequence>
      <xs:element name="Object" type="xs:anyType"/>
      <xs:element name="AssociationClassName" type="xs:NCName" minOccurs="0"/>
      <xs:element name="Role" type="xs:NCName" minOccurs="0"/>
      <xs:element name="ResultClassName" type="xs:NCName" minOccurs="0"/>
      <xs:element name="ResultRole" type="xs:NCName" minOccurs="0"/>
      <xs:element name="IncludeResultProperty" type="xs:NCName" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="AssociatedInstances" type="wsmb:AssociatedInstancesType"/>

  <xs:complexType name="AssociationInstancesType">
    <xs:sequence>
      <xs:element name="Object" type="xs:anyType"/>
      <xs:element name="ResultClassName" type="xs:NCName" minOccurs="0"/>
      <xs:element name="Role" type="xs:NCName" minOccurs="0"/>
      <xs:element name="IncludeResultProperty" type="xs:NCName" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="AssociationInstances" type="wsmb:AssociationInstancesType"/>

  <xs:element name="DerivedRepresentation" type="wsman:attributableEmpty"/>

  <xs:simpleType name="PolymorphismModeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="IncludeSubClassProperties"/>
      <xs:enumeration value="ExcludeSubClassProperties"/>
      <xs:enumeration value="None"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="PolymorphismMode" type="wsmb:PolymorphismModeType"/>

  <!-- Several capability elements are defined and may be included in IdentifyResponse 
       messages to assert that the service possesses a given capability. -->

  <!-- To advertise that a service will return CIM_Error elements in fault messages. 
       See DSP0227 Sect. 12. -->
  <xs:element name="Capability_FaultIncludesCIMError"/>
  <!-- To determine which XML element of a SOAP Fault Detail represents CIM_Error. -->
  <xs:attribute name="IsCIM_Error" type="xs:boolean" />

  <!-- To advertise that a service can emit metadata paths in requested format. -->
  <!-- A service may emit paths in either EPR format or URL format.  
       See DSP0227 Sect. 15. -->
  <!-- None, one, or both of these elements may be included in IdentifyResponse 
       to indicate the capabilities of the service. -->
  <xs:element name="Capability_ClassMetadataPathType_EPR"/>
  <xs:element name="Capability_ClassMetadataPathType_URL"/>

  <!-- To differentiate responses resulting from CQL expressions -->
  <xs:attribute name="Expression" type="xs:string"/>

  <!-- Master Fault Table subcode QNames -->
  <xs:element name="CIMException"><xs:complexType/></xs:element>
  <xs:element name="PolymorphismModeNotSupported"><xs:complexType/></xs:element>

</xs:schema>
