6.2 conference-info-extensions Namespace (http://schemas.microsoft.com/rtc/2005/08/confinfoextensions) Schema

Following is the schema for the conference-info-extensions namespace.

 <?xml version="1.0" encoding="utf-8"?>
 <xs:schema
 targetNamespace="http://schemas.microsoft.com/rtc/2005/08/confinfoextensions"
 elementFormDefault="qualified"
 attributeFormDefault="unqualified"
 xmlns:ci="urn:ietf:params:xml:ns:conference-info"
 xmlns:cis="urn:ietf:params:xml:ns:conference-info-separator"
 xmlns:tns="http://schemas.microsoft.com/rtc/2005/08/confinfoextensions"
 xmlns:msacp="http://schemas.microsoft.com/rtc/2005/08/acpconfinfoextensions"
 xmlns:msav="http://schemas.microsoft.com/rtc/2005/08/avconfinfoextensions"
 xmlns:msas="http://schemas.microsoft.com/rtc/2005/08/asconfinfoextensions"
 xmlns:msdata="http://schemas.microsoft.com/rtc/2005/08/dataconfinfoextensions"
 xmlns:msim="http://schemas.microsoft.com/rtc/2005/08/imconfinfoextensions"
 xmlns:msci2="http://schemas.microsoft.com/rtc/2008/12/confinfoextensions"
 xmlns:xs="http://www.w3.org/2001/XMLSchema"
 xmlns:ms="urn:microsoft-cpp-xml-serializer"
 xmlns="http://schemas.microsoft.com/rtc/2005/08/confinfoextensions"
 xmlns:msmcu="http://schemas.microsoft.com/rtc/2009/03/commonmcuextensions"
  
  
     <!-- Bring in standard conferencing package separator -->
     <xs:import namespace="urn:ietf:params:xml:ns:conference-info-separator" schemaLocation="ms-ci-separator.xsd"/>
  
     <!-- Bring in standard conferencing package -->
     <xs:import namespace="urn:ietf:params:xml:ns:conference-info" schemaLocation="ms-ci.xsd"/>
  
     <!-- Bring in later extensions to this package -->
     <xs:import namespace="http://schemas.microsoft.com/rtc/2008/12/confinfoextensions" schemaLocation="ms-ci-ext2.xsd"/>
  
     <!--
        This import brings the MCU settings definitions
     -->
     <xs:import namespace="http://schemas.microsoft.com/rtc/2005/08/acpconfinfoextensions" schemaLocation="acpmcusettings.xsd"/>
     <xs:import namespace="http://schemas.microsoft.com/rtc/2005/08/avconfinfoextensions" schemaLocation="avmcusettings.xsd"/>
     <xs:import namespace="http://schemas.microsoft.com/rtc/2005/08/dataconfinfoextensions" schemaLocation="datamcusettings.xsd"/>
     <xs:import namespace="http://schemas.microsoft.com/rtc/2005/08/imconfinfoextensions" schemaLocation="immcusettings.xsd"/>
     <xs:import namespace="http://schemas.microsoft.com/rtc/2005/08/asconfinfoextensions" schemaLocation="asmcusettings.xsd"/>
     <xs:import namespace="http://schemas.microsoft.com/rtc/2009/03/commonmcuextensions" schemaLocation="mcucommon.xsd"/>
  
     <xs:element name="to-mixer" type="msav:media-routing-type" ms:ignore="true"/>
     <xs:element name="from-mixer" type="msav:media-routing-type" ms:ignore="true"/>
  
     <xs:element name="session-id" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="disclaimer" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="designated-presenter" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="trusted" type="xs:boolean" ms:ignore="true"/>
  
     <xs:attribute name="conference-id" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="conference-id" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="conference-key" type="tns:conference-key-type" ms:ignore="true"/>
  
     <xs:element name="current-sidebar" type="xs:anyURI" ms:ignore="true"/>
  
     <xs:element name="last-update" type="xs:dateTime" ms:ignore="true"/>
  
     <xs:element name="last-activate" type="xs:dateTime" ms:ignore="true"/>
  
     <xs:element name="is-active" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="expiry-time" type="xs:dateTime" ms:ignore="true"/>
  
     <xs:element name="organizer-roaming-data" type="tns:organizer-roaming-data-type" ms:ignore="true"/>
  
     <xs:element name="notification-data" type="tns:notification-data-type" ms:ignore="true"/>
  
     <xs:element name="encryption-key" type="tns:encryption-key-type" ms:ignore="true"/>
  
     <xs:element name="opaque" type="tns:encryption-key-opaque-type" ms:ignore="true"/>
  
     <xs:attribute name="mcu-type" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="roles" type="ci:user-roles-type" ms:ignore="true"/>
  
     <xs:attribute name="smtp-address" type="xs:anyURI" ms:ignore="true"/>
  
     <xs:attribute name="endorser" type="xs:anyURI" ms:ignore="true"/>
  
     <xs:attribute name="endorser-display-name" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="trusted-entities" type="ci:users-type" ms:ignore="true"/>
  
     <xs:element name="languages" type="ci:user-languages-type" ms:ignore="true"/>
  
     <xs:element name="encrypted-uri" type="tns:encrypted-content-type" ms:ignore="true"/>
  
     <xs:element name="is-pstn-endpoint" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="anonymous-type-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="lobby-capable" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="join-url" type="xs:anyURI" ms:ignore="true"/>
  
     <xs:element name="autopromote-allowed" type="tns:autopromote-type" ms:ignore="true"/>
  
     <xs:element name="autopromote" type="tns:autopromote-type" ms:ignore="true"/>
  
     <xs:simpleType name="autopromote-type">
         <xs:restriction base="xs:unsignedInt"/>
     </xs:simpleType>
  
     <xs:element name="pstn-lobby-bypass-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="pstn-lobby-bypass" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="disclaimer-title" type="xs:string" ms:ignore="true"/>
  
     <xs:element name="recording-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="externaluser-recording-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="recording-notification" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="server-mode" type="xs:unsignedInt" ms:ignore="true"/>
  
     <xs:element name="default-entry-exit-announcements" type="xs:boolean" ms:ignore="true"/>
  
     <xs:element name="anonymous-dialout-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <!--
       Device Type Enumeration
     -->
     <xs:attribute name="device-type" type="tns:device-enumeration-type-ex" ms:ignore="true"/>
  
     <xs:simpleType name="device-enumeration-type-ex">
       <xs:union memberTypes="tns:device-enumeration-type xs:string"/>
     </xs:simpleType>
  
     <xs:simpleType name="device-enumeration-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="meetingRoom"/>
         </xs:restriction>
     </xs:simpleType>
  
     <!--
     CUSTOM INVITE TYPE
     -->
     <xs:element name="custom-invite" type="tns:custom-invite-type" ms:ignore="true"/>
  
     <xs:complexType name="custom-invite-type" ms:className="CC3PCustomInviteType">
         <xs:sequence>
             <xs:element name="logo-url" type="xs:anyURI" minOccurs="0" ms:propertyName="LogoUrl"/>
             <xs:element name="legal-url" type="xs:anyURI" minOccurs="0" ms:propertyName="LegalUrl"/>
             <xs:element name="help-url" type="xs:anyURI" minOccurs="0" ms:propertyName="HelpUrl"/>
             <xs:element name="custom-footer-text" type="xs:string" minOccurs="0" ms:propertyName="CustomFooterText"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!-- Number of users in a meeting -->
     <xs:attribute name="participant-count" type="xs:unsignedInt" ms:ignore="true"/>
  
     <!-- Indicates if the server supports the Endorse command -->
     <xs:element name="endorse-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <!-- Indicates server support for Main Video Hard Mute -->
     <xs:element name="main-video-mute-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <!-- Server support for Pano Video Hard Mute -->
     <xs:element name="pano-video-mute-allowed" type="xs:boolean" ms:ignore="true"/>
  
     <!-- Indicates if the current conference runs with large meetings optimizations. -->
     <xs:element name="is-large-meeting" type="xs:boolean" ms:ignore="true"/>
  
     <!--
       ENCRYPTION KEY OPAQUE TYPE
     -->
     <xs:complexType name="encryption-key-opaque-type">
         <xs:sequence>
             <xs:element name="issuing-server" type="xs:string" ms:propertyName="IssuingServer"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENCRYPTION KEY TYPE
     -->
     <xs:complexType name="encryption-key-type" ms:className="CC3PEncryptionKey">
         <xs:sequence>
             <xs:element name="x509-certificate" type="xs:base64Binary" ms:propertyName="X509Cert"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       CONFERENCE KEY TYPE
     -->
     <xs:complexType name="conference-key-type" ms:className="CC3PConferenceKey">
         <xs:sequence>
             <xs:element name="cms-data" type="xs:base64Binary" ms:propertyName="CmsData"/>
             <xs:element name="opaque" type="tns:encryption-key-opaque-type" minOccurs="0" ms:propertyName="Opaque"/>
             <xs:element ref="msci2:optional" minOccurs="0" ms:propertyName="IsOptional"/>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENCRYPTED CONTENT TYPE
     -->
     <xs:complexType name="encrypted-content-type" ms:className="CC3PEncryptedContent">
         <xs:sequence>
             <xs:element name="cms-data" type="xs:base64Binary" ms:propertyName="CmsData"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       ORGANIZER ROAMING DATA TYPE
     -->
     <xs:complexType name="organizer-roaming-data-type" ms:className="CC3POrganizerDataType">
         <xs:sequence>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       NOTIFICATION DATA TYPE
     -->
     <xs:complexType name="notification-data-type" ms:className="CC3PNotificationDataType">
         <xs:sequence>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       Admission policy for the conference
     -->
     <xs:element name="admission-policy" type="tns:admission-policy-type" ms:ignore="true"/>
  
     <xs:simpleType name="admission-policy-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="closedAuthenticated"/>
             <xs:enumeration value="openAuthenticated"/>
             <xs:enumeration value="anonymous"/>
         </xs:restriction>
     </xs:simpleType>
  
  
     <!--
       PSTN bridging access information for the conference
     -->
     <xs:element name="pstn-access" type="tns:pstn-access-type" ms:ignore="true"/>
  
     <xs:simpleType name="pstn-meeting-id-type">
         <xs:restriction base="xs:string">
             <xs:pattern value="[1-9][0-9]*"/>
         </xs:restriction>
     </xs:simpleType>
  
     <xs:complexType name="pstn-access-type" ms:className="CC3PPstnAccessType">
         <xs:sequence>
             <xs:element name="id" type="tns:pstn-meeting-id-type" minOccurs="0" ms:propertyName="Id"/>
             <xs:element name="access-numbers" type="tns:pstn-access-numbers-type" minOccurs="0" ms:propertyName="AccessNumbers"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="pstn-access-numbers-type" ms:className="CC3PPstnAccessNumbersType">
         <xs:sequence>
             <xs:element name="internal-url" type="xs:anyURI" minOccurs="0" ms:propertyName="InternalUrl"/>
             <xs:element name="external-url" type="xs:anyURI" minOccurs="0" ms:propertyName="ExternalUrl"/>
             <xs:element name="region" type="tns:pstn-access-number-region-type" minOccurs="0" maxOccurs="unbounded" ms:propertyName="RegionList"/>
             <xs:element ref="msci2:default-region" minOccurs="0" ms:propertyName="DefaultRegion"/>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="pstn-access-number-region-type" ms:className="CC3PPstnAccessNumberRegionType">
         <xs:sequence>
             <xs:element name="access-number" type="tns:pstn-access-number-type" minOccurs="0" maxOccurs="unbounded" ms:propertyName="AccessNumberList"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:attribute name="name" type="xs:string" use="required" ms:propertyName="Name"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="pstn-access-number-type" ms:className="CC3PPstnAccessNumberType">
         <xs:sequence>
             <xs:element name="language" type="tns:pstn-access-number-language-type" minOccurs="0" maxOccurs="unbounded" ms:propertyName="Languages"/>
             <xs:element name="number" type="xs:string" ms:propertyName="Number"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="pstn-access-number-language-type" ms:className="CC3PPstnAccessNumberLanguageType">
         <xs:sequence>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:attribute name="tag" type="xs:language" use="required" ms:propertyName="Tag"/>
         <xs:attribute name="lcid" type="xs:nonNegativeInteger" use="optional" ms:propertyName="LCID"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       CONFERENCE VIEW TYPE
     -->
     <xs:element name="conference-view" type="tns:conference-view-type" ms:ignore="true"/>
  
     <xs:complexType name="conference-view-type" ms:className="CC3PConferenceViewType">
         <xs:sequence>
             <xs:element name="entity-view" type="entity-view-type" minOccurs="0" maxOccurs="unbounded" ms:propertyName="EntityView"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:attribute ref="ci:state" default="full" ms:propertyName="State"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENTITY VIEW TYPE
     -->
     <xs:complexType name="entity-view-type" ms:className="CC3PEntityViewType">
         <xs:sequence>
             <xs:element name="entity-capabilities" type="entity-capabilities-type" minOccurs="0" ms:propertyName="EntityCapabilities"/>
             <xs:element name="entity-policy" type="entity-policy-type" minOccurs="0"/>
             <xs:element name="entity-settings" type="entity-settings-type" minOccurs="0" ms:propertyName="EntitySettings"/>
             <xs:element name="entity-state" type="entity-state-type" minOccurs="0" ms:propertyName="EntityState"/>
             <xs:element name="entity-shared-data" type="entity-shared-data-type" minOccurs="0"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:attribute ref="ci:state" default="full" ms:propertyName="State"/>
         <xs:attribute name="entity" type="xs:anyURI" ms:propertyName="Entity"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:element name="modal-parameters" type="tns:modal-parameters-type" ms:ignore="true"/>
     <xs:complexType name="modal-parameters-type">
       <xs:sequence>
         <xs:choice>
           <xs:element name="audio-parameters" type="msav:audio-parameters-type" minOccurs="0"/>
           <xs:element name="video-parameters" type="msav:video-parameters-type" minOccurs="0"/>
         </xs:choice>
         <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
     </xs:complexType>
  
   <!--
       MS CONFERENCE MEDIA STATES
     -->
     <xs:element name="conference-media-states" type="tns:conference-media-states-type" ms:ignore="true"/>
     <xs:complexType name="conference-media-states-type">
         <xs:sequence>
             <xs:element name="entry" type="conference-media-state-type" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:attribute ref="ci:state"  use="required"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
         MS CONFERENCE MEDIA STATE TYPE per MCU
      -->
     <xs:element name="conference-media-state" type="tns:conference-media-state-type" ms:ignore="true"/>
     <xs:complexType name="conference-media-state-type">
         <xs:sequence>
             <xs:element name="displayText" type="xs:string" minOccurs="0"/>
             <xs:element name="webPage" type="xs:anyURI" minOccurs="0"/>
             <xs:element name="userCount" type="xs:unsignedInt" minOccurs="0"/>
             <xs:element name="active" type="xs:boolean" minOccurs="0"/>
             <xs:element name="locked" type="xs:boolean" minOccurs="0"/>
             <xs:element name="recording" type="xs:boolean" minOccurs="0"/>
             <xs:element name="mixing" type="xs:boolean" minOccurs="0"/>
             <xs:element name="allMuted" type="xs:boolean" minOccurs="0"/>
             <xs:element name="mediums" type="ci:conference-media-type" minOccurs="0"/>
             <xs:element ref="msav:audio-video-media-state" minOccurs="0"/>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
         <xs:attribute ref="ci:state"  use="required"/>
         <xs:attribute name="entity" type="xs:anyURI"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       MCU POLICIES TYPE per MCU
     -->
     <xs:element name="conference-mcu-policies" type="tns:mcu-policies-type" ms:ignore="true"/>
  
     <xs:complexType name="mcu-policies-type">
         <xs:annotation>
             <xs:documentation>
                 TBD
             </xs:documentation>
         </xs:annotation>
  
         <xs:sequence>
             <xs:element name="guid" type="xs:anyURI" minOccurs="0"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
         </xs:sequence>
  
         <xs:attribute name="entity" type="xs:anyURI" use="required"/>
         <xs:attribute name="version" type="xs:string" use="required">
             <xs:annotation>
                 <xs:documentation>
                     Identifies the version of MCU settings specified.
                 </xs:documentation>
             </xs:annotation>
         </xs:attribute>
     </xs:complexType>
  
  
     <!--
       ENTITY CAPABILITIES TYPE
     -->
     <xs:complexType name="entity-capabilities-type" ms:className="CC3PEntityCapabilitiesType">
         <xs:sequence>
             <xs:choice minOccurs="0">
                 <xs:element ref="msacp:capabilities"/>
                 <xs:element ref="msav:capabilities" />
             </xs:choice>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:element ref="msdata:capabilities" minOccurs="0"/>
                 <xs:element ref="msas:capabilities" minOccurs="0"/>
                 <xs:sequence minOccurs="0">
                     <xs:element ref="cis:separator"/>
                     <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
                 </xs:sequence>
             </xs:sequence>
         </xs:sequence>
  
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENTITY POLICY TYPE
     -->
     <xs:complexType name="entity-policy-type">
         <xs:sequence>
             <xs:element name="guid" type="xs:anyURI" minOccurs="0"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
  
         <xs:attribute ref="msci2:policyAssignment" use="optional"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENTITY SETTINGS TYPE
     -->
     <xs:complexType name="entity-settings-type" ms:className="CC3PEntitySettingsType">
         <xs:sequence>
           <xs:element name="mediaFiltersRules" type="tns:media-filters-rules-type" minOccurs="0" />
           <xs:element name="media" type="ci:conference-media-type" minOccurs="0" />
           <xs:choice minOccurs="0">
                 <xs:element ref="msacp:settings" ms:propertyName="AcpMcuSettings"/>
                 <xs:element ref="msav:settings" ms:propertyName="AvMcuSettings"/>
                 <xs:element ref="msdata:settings" ms:propertyName="DataMcuSettings"/>
                 <xs:element ref="msim:settings" ms:propertyName="ImMcuSettings"/>
           </xs:choice>
           <xs:sequence minOccurs="0">
               <xs:element ref="cis:separator"/>
               <xs:element ref="msmcu:conf-media-filters-rules" minOccurs="0" maxOccurs="unbounded" />
               <xs:sequence minOccurs="0">
                   <xs:element ref="cis:separator"/>
                   <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
             </xs:sequence>
           </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
         ENTITY STATE TYPE
      -->
     <xs:complexType name="entity-state-type" ms:className="CC3PEntityStateType">
         <xs:sequence>
             <xs:element name="displayText" type="xs:string" minOccurs="0"/>
             <xs:element name="userCount" type="xs:unsignedInt" minOccurs="0"/>
             <xs:element name="active" type="xs:boolean" minOccurs="0"/>
             <xs:element name="locked" type="xs:boolean" minOccurs="0"/>
             <xs:element name="mediaFiltersRules" type="tns:media-filters-rules-type" minOccurs="0"/>
             <xs:element name="recording" type="recording-type" minOccurs="0" />
             <xs:element name="media" type="ci:conference-media-type" minOccurs="0"/>
             <xs:choice minOccurs="0">
                 <xs:element ref="msacp:state"/>
                 <xs:element ref="msav:state"/>
             </xs:choice>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:element ref="msas:session-ids" minOccurs="0"/>
                 <xs:sequence minOccurs="0">
                     <xs:element ref="cis:separator"/>
                     <xs:element ref="msdata:data-mcu-state" minOccurs="0" />
                     <xs:element ref="msmcu:permission-options" minOccurs="0"/>
                     <xs:element ref="msmcu:permissions" minOccurs="0"/>
                     <xs:element ref="msmcu:presentation-mode-capable" minOccurs="0"/>
                     <xs:element ref="msmcu:entry-exit-announcements" minOccurs="0"/>
                     <xs:sequence minOccurs="0">
                         <xs:element ref="cis:separator"/>
                         <xs:element ref="msmcu:multi-view-capable" minOccurs="0"/>
                         <xs:element ref="msmcu:video-presentation-mode-capable" minOccurs="0"/>
                         <xs:element ref="msmcu:conf-media-filters-rules" minOccurs="0" maxOccurs="unbounded" />
                         <xs:sequence minOccurs="0">
                             <xs:element ref="cis:separator"/>
                             <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
                         </xs:sequence>
                     </xs:sequence>
                 </xs:sequence>
             </xs:sequence>
         </xs:sequence>
         <xs:attribute name="application" type="xs:string"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
       ENTITY SHARED DATA TYPE
     -->
     <xs:complexType name="entity-shared-data-type">
         <xs:sequence>
             <xs:choice minOccurs="0">
                 <xs:element ref="msacp:shared-data"/>
             </xs:choice>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
         Media filters rules
     -->
     <xs:complexType name="media-filters-rules-type">
         <xs:sequence>
             <xs:element name="mayModifyOwnFilters" type="tns:boolean-role-rule-type" minOccurs="0" maxOccurs="unbounded"/>
             <xs:element name="initialFilters" type="tns:media-filters-role-rule-type" minOccurs="0" maxOccurs="unbounded"/>
             <xs:element ref ="msav:type" minOccurs="0" />
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="boolean-role-rule-type">
         <xs:sequence>
             <xs:element name="role" type="xs:string"/>
             <xs:element name="value" type="xs:boolean"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="media-filters-role-rule-type">
         <xs:sequence>
             <xs:element name="role" type="xs:string"/>
             <xs:element name="ingressFilter" type="tns:media-filter-type" minOccurs="0"/>
             <xs:element name="egressFilter" type="tns:media-filter-type" minOccurs="0"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
  
     <!--
       MS Authentication Type - LCS Extension
     -->
     <xs:element name="authMethod" type="tns:auth-method-type" ms:ignore="true"/>
  
     <xs:simpleType name="auth-method-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="enterprise"/>
             <xs:enumeration value="anonymous"/>
             <xs:enumeration value="federated"/>
         </xs:restriction>
     </xs:simpleType>
  
     <!--
       MS Role Type - LCS Extension
     -->
     <xs:simpleType name="ms-role-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="attendee"/>
             <xs:enumeration value="presenter"/>
         </xs:restriction>
     </xs:simpleType>
  
     <xs:element name="pstnRole" type="tns:ms-role-type" ms:ignore="true"/>
  
     <!--
       USER ACCESS TYPE
     -->
     <xs:element name="accessMethod" type="tns:access-method-type" ms:ignore="true"/>
  
     <xs:simpleType name="access-method-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="external"/>
             <xs:enumeration value="internal"/>
         </xs:restriction>
     </xs:simpleType>
  
     <!--
       CLIENT INFO TYPE
     -->
     <xs:element name="clientInfo" type="tns:client-info-type" ms:ignore="true"/>
  
     <xs:complexType name="client-info-type" ms:className="CC3PClientInfoType">
         <xs:sequence>
             <xs:element name="conversation-id" type="xs:string" minOccurs="0"/>
             <xs:element name="thread-id" type="xs:string" minOccurs="0"/>
             <xs:sequence minOccurs="0" ms:propertyName="Extension1" ms:className="CC3PClientInfoExtension1">
                 <xs:element ref="cis:separator" />
                 <xs:element ref="msci2:user-agent" minOccurs="0" maxOccurs="1" />
                 <xs:element ref="msci2:lobby-capable" minOccurs="0" ms:propertyName="LobbyCapable"/>
                 <xs:sequence minOccurs="0">
                     <xs:element ref="cis:separator" />
                     <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
                 </xs:sequence>
             </xs:sequence>
         </xs:sequence>
     </xs:complexType>
  
     <!--
       ORGANIZER TYPE
     -->
     <xs:element name="organizer" type="tns:organizer-type" ms:ignore="true"/>
  
     <xs:complexType name="organizer-type">
         <xs:sequence>
             <xs:element name="entity" type="xs:anyURI" minOccurs="0"/>
             <xs:element name="display-name" type="xs:string" minOccurs="0"/>
             <xs:element ref="msci2:immutable-id" minOccurs="0" ms:propertyName="ImmutableId"/>
             <xs:sequence minOccurs="0"  ms:propertyName="Extension1" ms:className="CC3POrganizerExtension1">
                 <xs:element ref="cis:separator"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
     </xs:complexType>
  
     <!--
       SESSION-ON-BEHALF-OF TYPE
     -->
     <xs:element name="session-on-behalf-of" type="tns:session-on-behalf-of-type" ms:ignore="true"/>
  
     <xs:complexType name="session-on-behalf-of-type" ms:className="CC3PSessionOnBehalfOf">
         <xs:sequence>
             <xs:element name="entity" type="xs:anyURI" minOccurs="1" ms:propertyName="Entity"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
    <!--
      IN-CONFERENCING-SERVICES TYPE
    -->
    <xs:element name="in-conferencing-services" type="tns:in-conferencing-services-type" ms:ignore="true"/>
  
     <xs:complexType name="in-conferencing-services-type" ms:className="CC3PInConferencingServices">
         <xs:sequence>
             <xs:element name="entry" type="tns:in-conferencing-services-entry-type" minOccurs="1" maxOccurs="unbounded" ms:propertyName="InConferencingServicesEntry"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:complexType name="in-conferencing-services-entry-type" ms:className="CC3PInConferencingServicesEntry">
         <xs:sequence>
             <xs:element name="active" type="xs:boolean" minOccurs="1"/>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
         <xs:attribute name="type" type="tns:in-conferencing-service-types-ex"/>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <xs:simpleType name="in-conferencing-service-types-ex">
       <xs:union memberTypes="tns:in-conferencing-service-types xs:string"/>
     </xs:simpleType>
  
     <xs:simpleType name="in-conferencing-service-types">
         <xs:restriction base="xs:string">
             <xs:enumeration value="personalVirtualAssistant"/>
             <xs:enumeration value="entryExitAnnouncements"/>
         </xs:restriction>
     </xs:simpleType>
  
     <!--
       CLIENT RECORDING
     -->
   <xs:complexType name="client-recording-type" ms:className="CC3PClientRecording">
     <xs:sequence>
       <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
     </xs:sequence>
     <xs:anyAttribute namespace="##other" processContents="lax"/>
   </xs:complexType>
  
   <xs:element name="client-recording" type="tns:client-recording-type" ms:ignore="true"/>
  
     <!--
       MEDIA FILTER
     -->
     <xs:element name="media-filter" type="tns:media-filter-type" ms:ignore="true"/>
     <xs:element name="media-ingress-filter" type="tns:media-filter-type" ms:ignore="true"/>
     <xs:element name="media-egress-filter" type="tns:media-filter-type" ms:ignore="true"/>
  
     <xs:simpleType name="media-filter-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="block" />
             <xs:enumeration value="unblock" />
         </xs:restriction>
     </xs:simpleType>
  
   <xs:element name="conf-media-filter" type="tns:conf-media-filter-type" ms:ignore="true"/>
  
   <xs:complexType name="conf-media-filter-type">
     <xs:attribute name="filter" type="tns:media-filter-type" use="required" ms:propertyName="Filter"/>
     <xs:attribute name="duration" type="xs:int" use="optional" ms:propertyName="Duration"/>
     <xs:anyAttribute namespace="##other" processContents="lax"/>
   </xs:complexType>
  
   <!-- Media-Source-Id referenced in Media-Type-->
   <xs:element name="media-source-id" type="xs:unsignedInt" ms:ignore="true" />
  
   <!-- source-name referenced in Media-Type-->
   <xs:element name="source-name" type="xs:string" ms:ignore="true"/>
  
   <!--
       Post dial strings
     -->
     <xs:element name="post-dial" type="xs:string" ms:ignore="true"/>
  
     <!--
       pstnLeaderPasscode
     -->
     <xs:element name="pstnLeaderPasscode" type="xs:string" ms:ignore="true"/>
  
     <!--
       endpoint capabilities
     -->
     <xs:element name="endpoint-capabilities" type="endpoint-capabilities-type" ms:ignore="true"/>
  
     <xs:complexType name="endpoint-capabilities-type">
         <xs:sequence>
             <xs:choice minOccurs="0">
                 <xs:element ref="msacp:endpoint-capabilities"/>
                 <xs:element ref="msav:endpoint-capabilities"/>
                 <xs:element ref="msdata:endpoint-capabilities"/>
                 <xs:element ref="msim:endpoint-capabilities"/>
             </xs:choice>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator" />
                 <xs:choice minOccurs="0">
                     <xs:element ref="msmcu:session-capabilities"/>
                 </xs:choice>
                 <xs:sequence minOccurs="0">
                     <xs:element ref="cis:separator"/>
                     <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
                 </xs:sequence>
             </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!--
         media capabilities
     -->
     <xs:element name="media-capabilities" type="tns:media-capabilities-type" ms:ignore="true"/>
  
     <xs:complexType name="media-capabilities-type" ms:className="CC3PMediaCapabilitiesType">
         <xs:sequence>
             <xs:element ref="msas:media-capabilities" minOccurs="0"/>
             <xs:sequence minOccurs="0">
                 <xs:element ref="cis:separator"/>
                 <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
             </xs:sequence>
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:complexType>
  
     <!-- IS ROBOT ELEMENT -->
     <xs:element name="is-robot" type="xs:boolean" ms:ignore="true"/>
  
     <!--
       Hash code string
     -->
     <xs:element name="hash-code" type="xs:string" ms:ignore="true"/>
  
     <!-- RECORDING TYPE -->
     <xs:complexType name="recording-type">
       <xs:sequence>
         <xs:element name="active" type="xs:boolean" minOccurs="0"/>
         <xs:element name="error" type="error-type" minOccurs="0"/>
         <xs:element name="paused" type="xs:boolean" minOccurs="0"/>
         <xs:element name="recorded-media" type="recorded-media-entry-collection-type" minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:string" use="required"/>
     </xs:complexType>
  
     <!-- RECORDING ENTITIES ELEMENT -->
     <xs:element name="recording-entities" type="recording-entity-collection-type" ms:ignore="true"/>
  
     <!-- RECORDING ENTITY COLLECTION TYPE -->
     <xs:complexType name="recording-entity-collection-type">
       <xs:sequence>
         <xs:element name="recording-entity" type="recording-entity-type" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
     </xs:complexType>
  
     <!-- RECORDING ENTITY TYPE -->
     <xs:complexType name="recording-entity-type">
       <xs:sequence>
         <xs:element name="recorded-media" type="recorded-media-entry-collection-type"/>
       </xs:sequence>
       <xs:attribute name="entity" type="xs:anyURI" use="required"/>
     </xs:complexType>
  
     <!-- RECORDED MEDIA ENTRY COLLECTION TYPE -->
     <xs:complexType name="recorded-media-entry-collection-type">
       <xs:sequence>
         <xs:element name="entry" type="recorded-media-entry-type" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
     </xs:complexType>
  
     <!-- RECORDED MEDIA ENTRY TYPE -->
     <xs:complexType name="recorded-media-entry-type">
       <xs:sequence>
         <xs:element name="error" type="error-type" minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="type" type="xs:string" use="required"/>
     </xs:complexType>
  
     <!-- ERROR ELEMENT -->
     <xs:element name="error" type="error-type" ms:ignore="true"/>
  
     <!-- ERROR TYPE -->
     <xs:complexType name="error-type">
       <xs:sequence>
         <xs:element name="code" type="xs:string"/>
         <xs:element name="description" type="xs:string" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
  
     <!-- session-type string -->
     <xs:attribute name="session-type" type="xs:string"/>
  
     <!-- epid -->
     <xs:attribute name="epid" type="xs:string"/>
  
     <!-- sip-instance-->
     <xs:attribute name="sip-instance" type="xs:string"/>
  
     <!-- endpoint-uri uri -->
     <xs:attribute name="endpoint-uri" type="xs:anyURI"/>
  
     <!-- refer-to-uri uri -->
     <xs:attribute name="refer-to-uri" type="xs:anyURI"/>
  
     <!-- asserted-identity -->
     <xs:attribute name="asserted-identity" type="xs:string"/>
  
     <!--
         SESSION DESCRIPTION TYPE: carries SDP for now just a string
     -->
     <xs:element name="session-description" type="tns:session-description-type" ms:ignore="true"/>
  
     <xs:complexType name="session-description-type">
         <xs:sequence>
             <xs:element name="sdp-string" type="xs:string" minOccurs="0" />
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
         </xs:sequence>
     </xs:complexType>
  
     <!--
         MEDIA STATE TYPE: This provides the state of the media
     -->
     <xs:element name="media-state" type="tns:media-state-type-ex" ms:ignore="true"/>
  
     <xs:simpleType name="media-state-type-ex">
         <xs:union memberTypes="tns:media-state-type xs:string"/>
     </xs:simpleType>
  
     <xs:simpleType name="media-state-type">
         <xs:restriction base="xs:string">
             <xs:enumeration value="pending"/>
             <xs:enumeration value="disconnected"/>
             <xs:enumeration value="offering"/>
             <xs:enumeration value="trying"/>
             <xs:enumeration value="proceeding"/>
             <xs:enumeration value="ringing"/>
             <xs:enumeration value="joining"/>
             <xs:enumeration value="connected"/>
             <xs:enumeration value="hold"/>
             <xs:enumeration value="forwarding"/>
             <xs:enumeration value="transferring"/>
         </xs:restriction>
     </xs:simpleType>
  
   <!--
       SERVER NOTIFICATION REPROXY: Indicates if the message (notification) was reproxied.
   -->
   <xs:attribute name ="is-proxied" type="xs:boolean"/>
   
</xs:schema>