Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation KM Web Services  Dokument im Navigationsbaum lokalisieren

Overview

Knowledge Management runs on Application Server Java and provides a Web-service access layer that allows access to the repository framework and KM services -  not only on the Java platform, but on any Web-service-enabled platform in a remote scenario based on SOAP. For example, you could use KM Web services from a .NET platform.

The available Web services include the functions of the repository framework (core KM functions), access to the KM index management service (KM search function) and remote access to the KM ACLs functionality.

Diese Grafik wird im zugehörigen Text erklärt

The Web services were built using SAP’s Enterprise Service Infrastructure (ESI), the core of SAP’s Enterprise Service Architecture (ESA). The heart of the implementation is a Java bean that is called by ESI at runtime.

API

Repository Framework Web Service

The repository framework Web service supports methods such as lookup(), findResources(), getProperty(), and getContent(), and also lock()/unlock() and checkOut()/checkIn(). It also supports mass calls (operating on multiple resources in one Web service call) to reduce the network traffic by reducing the number of calls. Mass calls are a very important topic, since a Web-service API must be designed taking into consideration the fact that each call has an overhead that depends on the network latency. This is in complete contrast to a Java API, for example, where the single method call does not matter much and the time spent in the method call is more important for the performance of the system. With Web services, the network latency and SOAP overhead becomes very important - so reducing the number of calls is one of the aims when designing Web-service APIs.

This is solved by providing mass calls for the most important methods such as lookupMass() and getPropertyMass() and by a data structure named FetchGroup, which you can use to control the actual data fields of the resources returned with the Web service calls. You can use FetchGroup to control whether or not optional data such as properties, content metadata, or certain access URLs should be returned. You can even control which properties are returned.

 

Index Management Web Service

The index management Web service supports methods for creating and querying indexes and, more importantly, for searching for resources within KM. All calls that might return a large number of resources can be handled in chunks. You specify that you want to receive the first ten results initially and that you then want to receive the next ten results with the next call, and so on.

These functions are required since the data volume is significant in a remote scenario with XML marshalling and unmarshalling (with regard to processing time, memory consumption, and network capacity for the verbose XML data).

ACL Web Service

The ACL Web service supports methods for remote access to the KM ACLs functionality. The Web service API covers methods for creating, reading, updating, or deleting an entire ACL.

The ACL Web service authenticates itself as the cmadmin_service user. Therefore, the ACL created by this Web service always has the cmadmin_service user set as Owner by default. There are two types of resource ACLs based on the ACL hierarchy - direct resource ACLs and inherited resource ACLs.

Effects of the Open Standard

Web service consumers use their own infrastructure to generate a proxy to the KM Web services. This proxy depends on the infrastructure, platform, and language chosen. On the one hand, this is the great thing about Web services – no one is bound to a specific environment. It is an open standard. On the other hand, SAP cannot provide detailed information on all the different ways of generating the proxy that is needed to access the Web services.

 

Ende des Inhaltsbereichs