Design Principles

The following is a list of design principles:
  • All web service calls work on the request-response paradigm. To achieve a task, a user sends in a request XML, and the results of the request are sent back in a response XML.
  • All web service calls are synchronous. A response is always sent, even if processing of a request is delegated to the workflow.
  • Each web service request or call must be complete. Every time TIBCO MDM receives a request, it expects all data necessary (for it to handle the request) to be available in the request XML.
  • No state is maintained between web service calls. TIBCO MDM does not enforce the order in which web service calls should be made. You can make any web service call anytime.
  • ‘Query’ and ‘Validate’ messages do not change the state of the system. By definition, ‘Query’ messages are read only and do not change the state of the system. This means, you can call the ‘Query’ service on an entity any number of times without causing the state of the system to change.
  • ‘Add’ and ’Modify’ messages can change state of the system.
  • ‘Add’ and ’Modify’ messages respect transactions. If a web service fails, all activity pertaining to the request is rolled back. A web service request can contain multiple transactions, which are independent of each other. For example, if the first transaction is successfully executed and the second transaction fails, there is no effect of the second transaction on the first.