The specific details vary from service to service. For example, you can define new transformers by extending the baseContentTransformer. This defines how the new transformer is invoked, the source and target MIME types it supports, and the transformer’s availability. This is done through configuration that extends the existing service. The underlying service itself requires no modification or additional code.