Fedora's API-A is a SOAP interface for accessing digital objects. The access operations include methods to do reflection on a digital object (i.e., to discover the kinds of disseminations that are available on the object), and to request disseminations. The major function of the Fedora Access service is to fulfill a client's request for dissemination. To support disseminations, the underlying repository system must evaluate the services specified for a digital object, and figure out how to call it. The service may be internal to the repository, or it may be a web service external to the repository. The underlying repository system facilitates all external service bindings on behalf of the client, simply returning a dissemination result via the access service layer.

On this page:

Repository Access Methods

describeRepository

Gets information that describes the repository.

Returns:

Object Access Methods

findObjects

Lists the specified fields of each object matching the given criteria.

Input parameters:

The possible values for resultfield are the following:

Returns:

Note:
The only way to get the Object State (or OwnerID) is via a findObjects call. Use these parameters to query the state of a object.

resumeFindObjects

Gets the next list of results from a truncated findObjects response.

Input parameters:

Returns:

getObjectHistory

Gets a list of timestamps that correspond to modification dates of components. This currently includes changes to Datastreams and disseminators.

Input parameters:

Returns:

getObjectProfile

Profile of an object, which includes key metadata fields and URLs for the object Dissemination Index and the object Item Index. Can be thought of as a default view of the object.

Input parameters:

Returns:

Note:
There are two general object properties, State and OwnerID, which are not part of the ObjectProfile. The way to get these are through the findObjects method.

Datastream Access Methods

getDatastreamDissemination

Gets the content of a datastream.

Input parameters:

Returns:

listDatastreams

Lists the datastreams of an object.

Input parameters:

Returns:

Dissemination Access Methods

getDissemination

Disseminates the content produced by executing the method specified in the service definition associated the specified digital object.

Input parameters:

Returns:

listMethods

Lists all the methods that the object supports.

Each method can take a number of paramethers. Each parameter for a method has a name, and a type. The possible values of a parameter depends on its type. It can be bound to a datastream in the object, it can have a hardcoded value or it can be defined by the caller.

Each parameter is defined to be passed by reference or passed by value.

Input parameters:

Returns:

WSDL

When running your own Fedora server, the API-A WSDL is available at /wsdl?api=API-A.

Example:

http://localhost:8080/fedora/wsdl?api=API-A

The Apache Axis library also automatically provides an INCORRECT WSDL DOCUMENT at /fedora/services/access?wsdl. Please DO NOT USE this; it is automatically generated and will result in unexpected behavior for your clients. The recommended URL, /fedora/wsdl?api=API-A produces a copy of the API-A WSDL exactly as it was intended.