$Id: webexp.dbx,v 1.4 2003/05/17 01:41:34 rlw Exp $
Copyright © 2003 The Rector and Visitors of The University of Virginia and Cornell University
Table of Contents
The Fedora API-A-Lite interface is implemented as an HTTP-enabled web service that consists of the following methods:
getDissemination - gets the specified dissemination request
getObjectProfile - gets the Object Profile of the specified object
For more information on the method definitions, refer to the API descriptions located at http://www.fedora.info/definitions/1/0/api/.
getDissemination syntax:
This syntax requests a dissemination of the specified object using the specified method of the associated behavior definition object. The result is returned as a MIME-typed stream.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - required name of the Fedora access service.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path.
PID - required persistent identifier of the digital object.
bDefPID - required persistent identifier of the behavior definition object to which the digital object subscribes.
methodName - required name of the method to be executed.
dateTime - value indicating dissemination of a version of the digital object at the specified point in time. (NOT implemented in release 1.0.)
parmArray - optional array of method parameters consisting of name/value pairs in the form parm1=value1&parm2=value2...
Example
http://localhost:8080/fedora/get/demo:5/demo:1/getThumbnail
GetObjectProfile syntax:
This syntax requests an object profile for the specified digital object. The xml parameter determines the type of output returned. If the parameter is omitted or has a value of "false", a MIME-typed stream consisting of an html table is returned providing a browser-savvy means of viewing the object profile. If the value specified is "true", then a MIME-typed stream consisting of XML is returned.
hostname - a required parameter specifying the hostname of the Fedora server.
port - a required parameter specifying the port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path.
PID - a required parameter specifying the persistent identifier of the digital object.
dateTime - an optional dateTime parameter indicating dissemination of a version of the digital object at the specified point in time. (NOT implemented in release 1.0.).
xml - an optional parameter indicating the requested output format. A value of "true" indicates a return type of text/xml; the absence of the xml parameter or a value of "false" indicates format is to be text/html.
Examples:
http://localhost:8080/fedora/get/demo:5
http://localhost:8080/fedora/get/demo:5?xml=true
Each Fedora data object has a default disseminator that provides a simple means of accessing the data object’s content without having to create a separate behavior definition and behavior mechanism object. Separate behavior definition and behavior mechanism objects can be added to extend the behaviors for an object beyond those behaviors provided by the default disseminator.
The default disseminator consists of a special internal behavior definition and behavior mechanism object that have the respective PIDs of fedora-system:3 and fedora-system:4. These special PIDs can be treated as ordinary behavior definition and behavior mechanism objects and used with both API-M, API-A, and API-A-Lite. The getObjectProfile method of API-A-Lite actually uses the getObjectProfile and viewObjectProfile methods of the default disseminator to retrieve an object’s profile. The default disseminator provides seven basic methods for accessing and viewing a data object’s content. Although all of the default disseminator’s methods can be accessed indirectly using the getObjectProfile method, they can also be disseminated using the special PID of fedora-system:3 for the default disseminator behavior definition object.
getObjectProfile syntax:
This syntax returns the data object's profile in XML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
getObjectProfile – method name to retrieve an object’s profile in XML format.
Examples:
http://localhost:8080/fedora/get/demo:5/fedora-system:3/getObjectProfile
viewObjectprofile syntax:
This syntax returns the data object's profile in HTML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
viewObjectProfile – method name to retrieve an object’s profile in HTML format.
Examples:
http://localhost:8080/fedora/get/demo:5/fedora-system:3/viewObjectProfile
getMethodIndex syntax:
This syntax retrieves the data object’s method index in XML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
getMethodIndex – method name to retrieve an object’s method index in XML format.
Examples:
http://localhost:8080/fedora/get/demo:5/fedora-system:3/getMethodIndex
viewMethodIndex syntax:
This syntax retrieves the data object’s method index in HTML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
viewMethodIndex – method name to retrieve an object’s method index in HTML format.
getItemIndex syntax:
This syntax retrieves the data object’s item index in XML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
getItemIndex – method name to retrieve an object’s item index in XML format.
viewItemIndex syntax:
This syntax retrieves the object’s item index in HTML format.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
viewItemIndex – method name to retrieve an object’s item index in HTML format.
Examples:
http://localhost:8080/fedora/get/demo:5/fedora-system:3/viewItemIndex
getItem syntax:
This syntax retrieves the data object’s datastream using a specified datastream ID.
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
get - a required parameter specifying the Fedora servlet path
PID – PID of the object for which you wish to retrieve its object profile.
fedora-system:3 – PID of the behavior definition object for the default disseminator.
getItem – method name to retrieve an object’s datastream using the specified datastream ID.
DSID – the datastream ID of the datastream you wish to retrieve.
Examples:
http://localhost:8080/fedora/get/demo:5/fedora-system:3/getItem?itemID=DS1
The Fedora repository system also includes a search interface that enables searching across both System Metadata and user-defined Dublin Core metadata.Upon ingestion, metadata from the Fedora System Metadata section and the Dublin Core (DC) Metadata section of the object are indexed in a relational database, and may be searched using the search interface. The DC Metadata section is an optional Implementor-Defined XML Metadata datastream in the object, where the "Datastream ID" is DC, and the XML conforms to the schema at: http://www.openarchives.org/OAI/2.0/oai_dc.xsd. If such a datastream is not provided, Fedora will construct a default Dublin Core record using the label of the object as the dc:title value and the PID of the object as the dc:identifier value. The search interface provides both simple and advanced searching via a web page included with the repository software. All queries are case insensitive. Simple search enables queries of words and phrases occurring anywhere in an object s indexed metadata fields. Advanced Search enables fielded searching across any combination of metadata elements using string comparison operators (= and ~) for string fields, and value comparison operators ( =, >, ≥, <, ≤ ) for date fields (dc:date fields may be treated as both). The wildcards, * and ? may be used in any string-based query. The search interface can be accessed using the syntax:
http://hostname:port/fedora/search
hostname - required hostname of the Fedora server.
port - required port number on which the Fedora server is running.
fedora - a required parameter specifying the Fedora servlet path.
search - a required parameter specifying the Fedora servlet path