-
Introduction
The Fedora Access service defines an open 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 behavior associations specified in a digital object, and
figure out how to dispatch a service request to a supporting service with
which the digital object associates. The supporting service may be internal
to the repository system, or it may be an external web service that the
repository must call upon. The underlying repostitory system facilitates all
external service bindings on behalf of the client, simply returning a
dissemination result via the Access service layer.
-
Methods
-
describeRepository
Gets information that describes the repository.
Returns: A data structure that contains key metadata describing
the Fedora repository server including repository name, version, base
URL, pid namespace, and sample request URLs.
-
findObjects
Lists the specified fields of each object matching the given
criteria.
Parameters:
resultFields: The names of the fields to
return.
maxResults: The maximum number of results to
return at a time.
query: The terms or conditions for the search.
Returns: the specified fields of each object matching the given
criteria.
-
getDatastreamDissemination
Gets the content of a datastream.
Parameters:
pid: The PID of the object.
dsID: The datastream ID.
asOfDateTime: A dateTime indicating the
version of the datastream to retrieve. If null, Fedora will use the
most recent version.
Returns: the datastream as a mime-typed stream.
-
getDissemination
Disseminates the content produced by executing the specified
method of the associated Behavior Mechanism object of the specified
digital object.
Parameters:
pid: The pid of the object.
bDefPid: The PID of the Behavior Definition
object.
methodName: The name of the method to be
executed.
parameters: An array of name-value pairs.
asOfDateTime: The versioning dateTime. If
null, Fedora will use the most recent version.
Returns: A MIME-typed stream containing the result of the
dissemination.
-
getObjectHistory
Gets a list of timestamps that correspond to modification dates
of components. This currently includes changes to datastreams and
disseminators.
Parameters:
pid: The pid of the object.
Returns: An array containing the list of timestamps indicating
when changes were made to the object.
-
getObjectProfile
Gets the ObjectProfile 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.
pid: The pid of the object.
asOfDateTime: the date/time stamp specifying
the desired view of the object. If null, the current view of the
object (the most recent time) is assumed.
Returns: the ObjectProfile of the object.
-
listDatastreams
Lists the datastreams of an object.
Parameters:
pid: The pid of the object.
asOfDateTime: the date/time stamp specifying
the desired view of the object. If null, the current view of the
object (the most recent time) is assumed.
Returns: A sequence of DatastreamDefs.
-
listMethods
Lists all the methods that the object supports.
Parameters:
pid: The pid of the object.
asOfDateTime: the date/time stamp specifying
the desired view of the object. If null, the current view of the
object (the most recent time) is assumed.
Returns: A sequence of ObjectMethodsDefs.
-
resumeFindObjects
Gets the next list of results from a truncated findObjects response.
Parameters:
sessionToken: The token of the session in
which the remaining results can be obtained.
Returns: the remaining specified fields of each object matching
the given criteria.
WSDL
- Offline
For reference, an offline copy of the API-A WSDL is
available here.
- Online
When running your own Fedora server, an online copy of
the API-A WSDL will be made publicly available at
/wsdl?api=API-A. For example:
http://localhost:8080/fedora/wsdl?api=API-A