All objects have a particular type , that reveals what can be done with an object. There are two important differences between TOM and most object-oriented systems. First of all, TOM treats all data, from whatever source, as objects. Objects don't have to have a particular representation, or be managed by a particular program or database. A message being transmitted across the Internet is just as much of an object as a strongly typed structure in compute memory.
TOM is also stricter about subtyping than many other object-oriented systems.
This substitutability makes it possible to use all sorts of unfamiliar objects through familiar supertype interfaces. It also helps in specifying conversions that preserve information. When TOM objects are transmitted across a network, they are represented in a particular format . A format is a representation of on object as a sequence of bytes. It is modeled as a type combined with a sequence of encodings , mappings from objects of one type to objects of another type.