Differences between revisions 61 and 62
Revision 61 as of 2008-10-17 08:07:47
Size: 2422
Editor: abr
Comment:
Revision 62 as of 2008-10-17 08:09:40
Size: 2353
Editor: abr
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:

Line 7: Line 9:
The API to Fedora is directly exported as the primary API to DOMS. We have restricted a few methods, and have some conventions about certain other should be used.

The following methods are restricted

 * [:/Managment#PurgeDatastream: apiM.PurgeDatastream] and[:/Managment#PurgeObject: apiM.PurgeObject] are not allowed. Instead use [:Fedora_3.0_API/Managment#modifyDatastream: apiM.modifyDatastream] and [:Fedora_3.0_API/Managment#modifyObject: apiM.modifyObject] to change the state to "D" (deleted).
 * [:/Managment#setDatastreamVersionable: apiM.setDatastreamVersionable] is disallowed. The internal datastreams are always versioned.
 * Do not use getNextPID, instead use the method provided from DOMS


Objects that are marked as "published" (see FedoraTransactionsReplacement) cannot be changed. Any API calls that attempt to change them will fail. There will be made a service to atomically change the state of objects. TODO!!!
Line 37: Line 29:
The API to Fedora is directly exported as the primary API to DOMS. We have restricted a few methods, and have some conventions about certain other should be used.


== API restrictions ==

 * [:/Managment#PurgeDatastream: apiM.PurgeDatastream] and[:/Managment#PurgeObject: apiM.PurgeObject] are not allowed. Instead use [:Fedora_3.0_API/Managment#modifyDatastream: apiM.modifyDatastream] and [:Fedora_3.0_API/Managment#modifyObject: apiM.modifyObject] to change the state to "D" (deleted).
 * [:/Managment#setDatastreamVersionable: apiM.setDatastreamVersionable] is disallowed. The internal datastreams are always versioned.
 * Do not use getNextPID, instead use the method provided from DOMS


Objects that are marked as "published" (see FedoraTransactionsReplacement) cannot be changed. Any API calls that attempt to change them will fail.



TODO!!!

Fedora 3.0 API

DOMS metadata objects will be stored in Fedora-commons 3.0.

The API is documented here, as far as it goes: http://www.fedora-commons.org/documentation/3.0/userdocs/index.html#webservices

The structures below are used by Fedora, almost no matter which lanquage you use to interact with it. We use our own shorthand to specify the types. This schema should help you translate to your language of choise

shorthand

wsdl

fedora java client

rest

String

xsd:string

java.lang.String

xsd:string

[]

xsd:sequence

java array

?

byte[]

xsd:base64Binary

jave primitive byte[]

?

long

xsd:long

java primitive long

xsd:long

boolean

xsd:boolean

java primitive boolean

xsd:boolean

The "fedora-types:ArrayOfString" is defined thus

<complexType name="ArrayOfString">
   <sequence>
      <element name="item" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
   </sequence>
</complexType>

The API to Fedora is directly exported as the primary API to DOMS. We have restricted a few methods, and have some conventions about certain other should be used.

API restrictions

  • [:/Managment#PurgeDatastream: apiM.PurgeDatastream] and[:/Managment#PurgeObject: apiM.PurgeObject] are not allowed. Instead use [:Fedora_3.0_API/Managment#modifyDatastream: apiM.modifyDatastream] and [:Fedora_3.0_API/Managment#modifyObject: apiM.modifyObject] to change the state to "D" (deleted).

  • [:/Managment#setDatastreamVersionable: apiM.setDatastreamVersionable] is disallowed. The internal datastreams are always versioned.
  • Do not use getNextPID, instead use the method provided from DOMS

Objects that are marked as "published" (see FedoraTransactionsReplacement) cannot be changed. Any API calls that attempt to change them will fail.

TODO!!!

The Fedora API is described in the the pages below.

  • [:/Access: The public Access API] - Everybody can use this, this is the primary way for external applications to query the repository.
  • [:/Managment: The protected Managment API] - Only authenticated administrators, such as users of the GUI, can use this.
  • [:Fedora_3.0_triple_store_API: The Resource Index API] - The interface to the Fedora triple store.

Fedora 3.0 API (last edited 2010-03-17 13:12:49 by localhost)