6 Appendix A: Full WSDL

SharePoint

For ease of implementation, the full WSDL and schema are provided in this appendix.

 <?xml version="1.0" encoding="utf-8"?>
 <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:s1="http://microsoft.com/wsdl/types/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
   <s:schema elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/sharepoint/soap/directory/">
    <s:import namespace="http://microsoft.com/wsdl/types/" />
    <s:element name="GetPermissionCollection">
     <s:complexType>
      <s:sequence>
       <s:element minOccurs="1" maxOccurs="1" name="objectName" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="objectType" type="s:string" />
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="GetPermissionCollectionResponse">
     <s:complexType>
      <s:sequence>
       <s:element minOccurs="0" maxOccurs="1" name="GetPermissionCollectionResult">
        <s:complexType>
         <s:sequence>
          <s:element name="GetPermissionCollection">
           <s:complexType>
            <s:sequence>
             <s:element maxOccurs="unbounded" name="Permission">
              <s:complexType>
               <s:attribute name="MemberID" type="s:int" use="required" />
               <s:attribute name="Mask" type="s:int" use="required" />
               <s:attribute name="MemberIsUser" type="s:string" use="required" />
               <s:attribute name="MemberGlobal" type="s:string" use="required" />
               <s:attribute name="UserLogin" type="s:string" use="optional" />
               <s:attribute name="GroupName" type="s:string" use="optional" />
              </s:complexType>
             </s:element>
            </s:sequence>
           </s:complexType>
          </s:element>
         </s:sequence>
        </s:complexType>
       </s:element>
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="AddPermission">
     <s:complexType>
      <s:sequence>
       <s:element minOccurs="1" maxOccurs="1" name="objectName" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="objectType" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionIdentifier" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionType" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionMask" type="s:int" />
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="AddPermissionResponse">
     <s:complexType />
    </s:element>
    <s:element name="AddPermissionCollection">
     <s:complexType>
      <s:sequence>
       <s:element name="objectName" type="s:string" minOccurs="1"/>
       <s:element name="objectType" type="s:string" minOccurs="1"/>
       <s:element name="permissionsInfoXml" minOccurs="1">
        <s:complexType>
         <s:sequence>
          <s:element name="Permissions">
           <s:complexType>
            <s:sequence>
             <s:element name="Users" minOccurs="0" maxOccurs="1">
              <s:complexType>
               <s:sequence>
                <s:element minOccurs="0" maxOccurs="100" name="User">
                 <s:complexType>
                  <s:attribute name="LoginName" type="s:string" use="required" />
                  <s:attribute name="Email" type="s:string" use="optional" />
                  <s:attribute name="Name" type="s:string" use="optional" />
                  <s:attribute name="Notes" type="s:string" use="optional" />
                  <s:attribute name="PermissionMask" type="s:int" use="required" />
                 </s:complexType>
                </s:element>
               </s:sequence>
              </s:complexType>
             </s:element>
             <s:element name="Groups" minOccurs="0" maxOccurs="1">
              <s:complexType>
               <s:sequence>
                <s:element minOccurs="0" maxOccurs="100" name="Group">
                 <s:complexType>
                  <s:attribute name="GroupName" type="s:string" use="required" />
                  <s:attribute name="PermissionMask" type="s:int" use="required" />
                 </s:complexType>
                </s:element>
               </s:sequence>
              </s:complexType>
             </s:element>
             <s:element name="Roles" minOccurs="0" maxOccurs="1">
              <s:complexType>
               <s:sequence>
                <s:element minOccurs="0" maxOccurs="100" name="Role">
                 <s:complexType>
                  <s:attribute name="RoleName" type="s:string" use="required" />
                  <s:attribute name="PermissionMask" type="s:int" use="required" />
                 </s:complexType>
                </s:element>
               </s:sequence>
              </s:complexType>
             </s:element>
            </s:sequence>
           </s:complexType>
          </s:element>
         </s:sequence>
        </s:complexType>
       </s:element>
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="AddPermissionCollectionResponse">
     <s:complexType />
    </s:element>
    <s:element name="UpdatePermission">
     <s:complexType>
      <s:sequence>
       <s:element minOccurs="1" maxOccurs="1" name="objectName" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="objectType" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionIdentifier" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionType" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionMask" type="s:int" />
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="UpdatePermissionResponse">
     <s:complexType />
    </s:element>
    <s:element name="RemovePermission">
     <s:complexType>
      <s:sequence>
       <s:element minOccurs="1" maxOccurs="1" name="objectName" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="objectType" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionIdentifier" type="s:string" />
       <s:element minOccurs="1" maxOccurs="1" name="permissionType" type="s:string" />
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="RemovePermissionResponse">
     <s:complexType />
    </s:element>
    <s:element name="RemovePermissionCollection">
     <s:complexType>
      <s:sequence>
       <s:element name="objectName" type="s:string" minOccurs="1"/>
       <s:element name="objectType" type="s:string" minOccurs="1"/>
       <s:element name="memberIdsXml" minOccurs="1">
        <s:complexType>
         <s:sequence>
          <s:element name="Members">
           <s:complexType>
            <s:sequence>
             <s:element maxOccurs="unbounded" name="Member">
              <s:complexType>
               <s:attribute name="ID" type="s:int" use="required" />
              </s:complexType>
             </s:element>
            </s:sequence>
           </s:complexType>
          </s:element>
         </s:sequence>
        </s:complexType>
       </s:element>
      </s:sequence>
     </s:complexType>
    </s:element>
    <s:element name="RemovePermissionCollectionResponse">
     <s:complexType />
    </s:element>
   </s:schema>
   <s:schema elementFormDefault="qualified" targetNamespace="http://microsoft.com/wsdl/types/">
    <s:simpleType name="guid">
     <s:restriction base="s:string">
      <s:pattern value="[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" />
     </s:restriction>
    </s:simpleType>
   </s:schema>
  </wsdl:types>
  <wsdl:message name="GetPermissionCollectionSoapIn">
   <wsdl:part name="parameters" element="tns:GetPermissionCollection" />
  </wsdl:message>
  <wsdl:message name="GetPermissionCollectionSoapOut">
   <wsdl:part name="parameters" element="tns:GetPermissionCollectionResponse" />
  </wsdl:message>
  <wsdl:message name="AddPermissionSoapIn">
   <wsdl:part name="parameters" element="tns:AddPermission" />
  </wsdl:message>
  <wsdl:message name="AddPermissionSoapOut">
   <wsdl:part name="parameters" element="tns:AddPermissionResponse" />
  </wsdl:message>
  <wsdl:message name="AddPermissionCollectionSoapIn">
   <wsdl:part name="parameters" element="tns:AddPermissionCollection" />
  </wsdl:message>
  <wsdl:message name="AddPermissionCollectionSoapOut">
   <wsdl:part name="parameters" element="tns:AddPermissionCollectionResponse" />
  </wsdl:message>
  <wsdl:message name="UpdatePermissionSoapIn">
   <wsdl:part name="parameters" element="tns:UpdatePermission" />
  </wsdl:message>
  <wsdl:message name="UpdatePermissionSoapOut">
   <wsdl:part name="parameters" element="tns:UpdatePermissionResponse" />
  </wsdl:message>
  <wsdl:message name="RemovePermissionSoapIn">
   <wsdl:part name="parameters" element="tns:RemovePermission" />
  </wsdl:message>
  <wsdl:message name="RemovePermissionSoapOut">
   <wsdl:part name="parameters" element="tns:RemovePermissionResponse" />
  </wsdl:message>
  <wsdl:message name="RemovePermissionCollectionSoapIn">
   <wsdl:part name="parameters" element="tns:RemovePermissionCollection" />
  </wsdl:message>
  <wsdl:message name="RemovePermissionCollectionSoapOut">
   <wsdl:part name="parameters" element="tns:RemovePermissionCollectionResponse" />
  </wsdl:message>
  <wsdl:portType name="PermissionsSoap">
   <wsdl:operation name="GetPermissionCollection">
    <wsdl:input message="tns:GetPermissionCollectionSoapIn" />
    <wsdl:output message="tns:GetPermissionCollectionSoapOut" />
   </wsdl:operation>
   <wsdl:operation name="AddPermission">
    <wsdl:input message="tns:AddPermissionSoapIn" />
    <wsdl:output message="tns:AddPermissionSoapOut" />
   </wsdl:operation>
   <wsdl:operation name="AddPermissionCollection">
    <wsdl:input message="tns:AddPermissionCollectionSoapIn" />
    <wsdl:output message="tns:AddPermissionCollectionSoapOut" />
   </wsdl:operation>
   <wsdl:operation name="UpdatePermission">
    <wsdl:input message="tns:UpdatePermissionSoapIn" />
    <wsdl:output message="tns:UpdatePermissionSoapOut" />
   </wsdl:operation>
   <wsdl:operation name="RemovePermission">
    <wsdl:input message="tns:RemovePermissionSoapIn" />
    <wsdl:output message="tns:RemovePermissionSoapOut" />
   </wsdl:operation>
   <wsdl:operation name="RemovePermissionCollection">
    <wsdl:input message="tns:RemovePermissionCollectionSoapIn" />
    <wsdl:output message="tns:RemovePermissionCollectionSoapOut" />
   </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="PermissionsSoap" type="tns:PermissionsSoap">
   <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
   <wsdl:operation name="GetPermissionCollection">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/GetPermissionCollection" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="AddPermission">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermission" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="AddPermissionCollection">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermissionCollection" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="UpdatePermission">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/UpdatePermission" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="RemovePermission">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermission" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="RemovePermissionCollection">
    <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermissionCollection" style="document" />
    <wsdl:input>
     <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="PermissionsSoap12" type="tns:PermissionsSoap">
   <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
   <wsdl:operation name="GetPermissionCollection">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/GetPermissionCollection" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="AddPermission">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermission" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="AddPermissionCollection">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermissionCollection" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="UpdatePermission">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/UpdatePermission" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="RemovePermission">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermission" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
   <wsdl:operation name="RemovePermissionCollection">
    <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermissionCollection" style="document" />
    <wsdl:input>
     <soap12:body use="literal" />
    </wsdl:input>
    <wsdl:output>
     <soap12:body use="literal" />
    </wsdl:output>
   </wsdl:operation>
  </wsdl:binding></wsdl:definitions>
Show: