Contracts have been part of human interaction for ages, and some might argue that they were essential to the transition between barbarism and civilization. For a contract to be useful in guiding a value chain, it must be represented in a form that can be used by an information system. These slides show how a contract can be designed using UML and implemented in XML, one of many options.
Just as a contract has clauses that specify the courses of action in all situations,
a contract diagram represents it through its deontic states and the conditions which relate them. This is a specialization of a state transition diagram, in which each state represents a situation (state of affairs), and each transition represents a policy (course of action). The concept of swimlanes is borrowed from activity diagrams to separate situations between the parties to the contract. Note that each situation and associated rights and obligations represent a contract clause.
These are numbered to help trace between the textual, UML and XML forms.