Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Under what conditions should the API extension architecture expose a URI, or invoke this extensionan asynchronous interaction be invoked?  The current understanding of 'invoke' means "direct an HTTP request or response to an extension for processingfor a resource."  If this particular use case uses 'invoke' in a different way, please define.

Examples of preconditions include:

  • Extension Interaction is invoked when a request is made to any repository resource.
  • Extension Interaction is invoked when a request to any resource contains certain content hinting at slow storage (e.g. is a POST, or contains a particular HTTP header)
  • URIs with pattern /path/to/object/ext:myExtension are exposed whenever a given Fedora object has an rdf:type of myns:myType
  • Extension Interaction is invoked when a request is made to a web resource (URI) exposed by the external service (i.e. API-X.)

Deployment or Implementation notes

...

  • The API-X defines a single public URI for this service, which abstracts away the details of its real location on my backend infrastructure, allowing the implementing web service to be easily re-located.
  • The API-X allows the presence of this service to be discovered by clients
  • The API-X provides a convenient way to integrate this service as a filter for all requests.
  • The API-X implementation provides a convenient way to distribute and deploy the extension so that others can easily use or evaluate it (i.e. API-X)