This page describes a potential set of questions to help evaluate use cases, present them in a clear and uniform way, and distill into requirements.  The goal is to explore possible ways in which the API-X can be used to address each use case as concretely as possible, but falling short of providing a true specification or extension design. 

Web Resources and Interactions

What web resources (URIs, patterns) are relevant to this particular API Extension?  Would this extension expose any new resources, or involve existing ones (e.g. URI of a fedora resource, as defined via the Fedora HTTP API)?  How does the user interact with the resource, and how is the extension involved in that interaction?  

Preconditions

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

Examples of preconditions include:

Deployment or Implementation notes

Are there any deployment or implementation-related details that may be relevant to the API extension architecture?  

Examples include:

Proposed Requirements

What requirements may this use case place on the API extension architecture?  

API-X Value Proposition

What do you see as a potential value proposition of the API extension architecture for this use case above and beyond, say, deploying web service somewhere and having clients point to its URI, or compiling an extension into Fedora using webapp+, or deploying into an OSGi container beside Fedora?  

Examples include: