SharePoint Web Services as Data Sources for DVWPs
In most cases, you won’t need to use them, but SharePoint exposes much through Web Services which can be used in DVWPs as Data Sources. The nice thing about the Web Services is that they let you get at things *about* site contents as well as the contents themselves. In other words, the meta-meta information. For instance, you might want to know what values are available in a Choice column, and the Lists Web Service will allow you to get at that information.
The full set of available Web Services is available in the Office SharePoint Server 2007 SDK. The contents of the SDK are also online at MSDN. Here’s the quick list of available Windows SharePoint Services 3.0 Web Services as links into MSDN:
- Administration Web Service
- Alerts Web Service
- Authentication Web Service
- Copy Web Service
- Document Workspace Web Service
- Forms Web Service
- Imaging Web Service
- List Data Retrieval Web Service
- Lists Web Service
- Meetings Web Service
- People Web Service
- Permissions Web Service
- SharePoint Directory Management Web Service
- Site Data Web Service
- Sites Web Service
- Search Web Service
- Users and Groups Web Service
- Versions Web Service
- Views Web Service
- Web Part Pages Web Service
- Webs Web Service
- Some additional Web Services are exposed by MOSS, and the superset of Web Services adds the following:
BDC Fields Resolver Web service | /_vti_bin/bdcfieldsresolver.asmx | BDC Fields Resolver Web service for client applications. Reserved for internal use only. |
BDC Web service | /_vti_bin/businessdatacatalog.asmx | Business Data Catalog metadata Web service. Reserved for internal use only. |
CMS Content Area Toolbox Info Web service | /_vti_bin/contentAreaToolboxService.asmx | Designed for use by the Microsoft Office SharePoint Designer client to use. |
Excel Services Web service | /_vti_bin/ExcelService.asmx | Provides methods to call Excel Services remotely or to work as a callback for Web Parts. |
Forms Services proxy Web service | /_vti_bin/FormsServiceProxy.asmx | Provides methods for Forms Services to proxy requests to remote data sources from Web-based forms. |
Forms Services Web service | /_vti_bin/FormsServices.asmx | Provides methods to call Forms Services remotely or to work as a callback for Web-based forms. |
Official File Web service | /_vti_bin/officialfile.asmx | Provides methods for sending files to a records repository. |
Published Links Web service | /_vti_bin/publishedlinksservice.asmx | Office system client applications and other applications can obtain the list of published links on the server that are targeted to the current user. |
Publishing Service Web service | /_vti_bin/PublishingService.asmx | Provides methods to remotely work with the publishing service. |
Slide Library Web service | /_vti_bin/SlideLibrary.asmx | Provides methods for slide library callbacks or remote publishing of slides. |
Search Crawl Web service | /_vti_bin/spscrawl.asmx | Provides methods for remote Office SharePoint Server 2007 server farms to crawl a local farm. |
User Profile Change Web service | /_vti_bin/userprofilechangeservice.asmx | Provides methods to query the user profiles change log remotely. |
User Profile Web service | /_vti_bin/userprofileservice.asmx | Provides a user profile interface for remote clients. |
Workflow Web service | /_vti_bin/workflow.asmx | Provides methods to work with workflows. |
The SharePoint Central Administration Web application provides Web services in the _vti_adm directory that map to the following file system location:
%COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\12\ADMISAPI
The following Web services are exposed within the Central Administration Web application. For reasons of helping to ensure security, these Web services are not available to call remotely from custom code in a hosted environment.
Admin – /_vti_adm/admin.asmx
Provides methods for managing a deployment of Windows SharePoint Services, such as for creating or deleting sites.
Content Deployment Remote Import – /_vti_adm/ContentDeploymentRemoteImport.asmx
Provides methods for a remote server farm to use content deployment to get content into a local farm.
Depending on configuration, the Office Server Web Services Web application exposes the following internal Web services, which are not available for calls from custom code.
Search Web service – SearchAdmin.asmx
Office SharePoint Server 2007 Search Administration Web service.
Search Application Web service – /SSP/Search/SearchAdmin.asmx
Office SharePoint Server 2007 Search Application Administration Web service.
Excel Service SOAP – /SSP/ExcelCalculationServer/ExcelService.asmx
Office SharePoint Server 2007 Excel Services Application Web service.
I haven’t yet figured out how to use these Web services in DVWPs when authentication is required. Well, I have managed to make it work by including credentials in clear in the DVWP, but I don’t see this as a good practice…