The ElementSerializer interface provides the method to serialize a single
element in a message. Since the MessageDefinition is also an
ElementDefinition, an ElementSerializer is also used to serialize the root of
the message. The appropriate implementation of ElementSerializer is obtained
through the ElementSerializerFactory class based on the ElementDefinition
passed in.