Over the last weeks I've been busy with finding a suitable approach towards REST Web services descriptions. Not quite there yet, but close! Here is my list of essential aspects a service type specification must address:
- Overall purpose of the service (aka the realized business process role)
- What client goals does the service enable (aka protocol operations)
- When can the client expect certain goals to be available (aka partial ordering of application states)
- What does the client have to do to 'execute' a certain goal (aka hypermedia semantics)