From http://www.cse.ohio-state.edu/~neelam/courses/788/lwb.pdf
A type specification contains the following information:
- The type's name
- A description of the type's value space
- For each of the type's methods:
- its name
- its signature (including signalled exceptions)
- its behavior in terms of preconditions and postconditions