7 Appendix B: Schema
This section provides the additional schema elements for the extensions defined by the [MS-WSDS] protocol. For clarity, elements of the WS-Enumeration [WSENUM] schema that are not extended by this protocol do not appear in the extended schema. To obtain the fully-extended [WSENUM] schema, the implementer must include nonextended XML elements, attributes, complex types, and so on, from the [WSENUM] schema.
-
<!--[MS-WSDS] filter extension elements schema]--> <xsd:schema xmlns:adlq="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/LdapQuery" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/LdapQuery" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name = "LdapQuery"> <xsd:complexType> <xsd:sequence> <xsd:element name="Filter" type="xsd:string" minOccurs="1" maxOccurs ="1" /> <xsd:element name="BaseObject" type="xsd:string" minOccurs="1" maxOccurs="1" /> <xsd:element name="Scope" type="xsd:string" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> <!--[MS-WSDS] selection and sorting extension elements schema]--> <xsd:schema xmlns:ad="http://schemas.microsoft.com/2008/1/ActiveDirectory" xmlns:addata="http://schemas.microsoft.com/2008/1/ActiveDirectory/Data" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2008/1/ActiveDirectory" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name ="Selection"> <xsd:complexType> <xsd:sequence> <xsd:element name="SelectionProperty" type="xsd:string" minOccurs="1" maxOccurs ="unbounded" /> </xsd:sequence> <xsd:attribute name="Dialect" fixed="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/XPath-Level-1" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name ="Sorting"> <xsd:complexType> <xsd:sequence> <xsd:element name="SortingProperty" minOccurs="1" maxOccurs ="1"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="Ascending" use="optional" type="xsd:boolean" default="true"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> </xsd:sequence> <xsd:attribute name="Dialect" fixed="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/XPath-Level-1" use="required"/> </xsd:complexType> </xsd:element> </xsd:schema> <!--Extended [WSENUM] Schema--> <xsd:schema targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/enumeration" xmlns:wsen="http://schemas.xmlsoap.org/ws/2004/09/enumeration" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:adlq="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/LdapQuery" xmlns:ad="http://schemas.microsoft.com/2008/1/ActiveDirectory" xmlns:addata="http://schemas.microsoft.com/2008/1/ActiveDirectory/Data" elementFormDefault="qualified" blockDefault="#all"> <xsd:import namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" schemaLocation="http://schemas.xmlsoap.org/ws/2004/08/addressing"/> <xsd:import namespace="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/LdapQuery"/> <xsd:import namespace="http://schemas.microsoft.com/2008/1/ActiveDirectory"/> <!--Extended filter type for Enumerate [WSENUM] request--> <xsd:complexType name="FilterType"> <xsd:sequence> <xsd:element minOccurs="0" maxOccurs="1" ref="adlq:LdapQuery" /> </xsd:sequence> <xsd:attribute name="Dialect" fixed="http://schemas.microsoft.com/2008/1/ActiveDirectory/Dialect/LdapQuery"/> </xsd:complexType> <!-- Other elements from [WSENUM] schema in section <!-- Types and global elements -->: PositiveDurationType (simpleType) NonNegativeDurationType (simpleType) ExpirationType (simpleType) EnumerationContextType (complexType) ItemListType (complexType) LanguageSpecificStringType (complexType) --> <!--Extended Enumerate [WSENUM] request--> <xsd:element name="Enumerate"> <xsd:complexType> <xsd:sequence> <xsd:element name="EndTo" type="wsa:EndpointReferenceType" minOccurs="0" /> <xsd:element name="Expires" type="wsen:ExpirationType" minOccurs="0" /> <xsd:element name="Filter" type="wsen:FilterType" minOccurs="0" maxOccurs="1" /> <xsd:element ref="ad:Selection" minOccurs="0" maxOccurs="1" /> <xsd:element ref="ad:Sorting" minOccurs="0" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- Other elements from [MS-WSPELD] schema in Appendix B: ad:Controls (element) --> <!--Extended PULL [WSENUM] request--> <xsd:element name="Pull"> <xsd:complexType> <xsd:sequence> <xsd:element name="EnumerationContext" type="tns:EnumerationContextType" /> <xsd:element name="MaxTime" type="tns:PositiveDurationType" minOccurs="0" /> <xsd:element name="MaxElements" type="xsd:positiveInteger" minOccurs="0" /> <xsd:element name="MaxCharacters" type="xsd:positiveInteger" minOccurs="0" /> <xsd:element ref="ad:Controls" minOccurs="0" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- Other elements from [WSENUM] schema, the following sections in [WSENUM] Section <!-- Used for a fault response --> SupportedDialect (element) Section <!-- Enumerate response --> EnumerateResponse (element) Section <!-- Pull response --> PullResponse (element) Section <!-- Renew request --> Renew (element) Section <!-- Renew response --> RenewResponse (element) Section <!-- GetStatus request --> GetStatus (element) Section <!-- GetStatus response --> GetStatusResponse (element) Section <!-- Release request --> Release (element) Section <!—-- EnumerationEnd message --> EnumerationEnd (elemnet) EnumerationEndCodeType (simpleType) OpenEnumarationEndCodeType (simpleType) --> </xsd:schema>